这一次的项目需要用到mysql数据库,在咨询过几个用过的朋友后我选择了较为稳定的5.7版本。
第一步,从官网上下载mysql5.7的Archive版本(https://downloads.mysql.com/archives/community/),这个版本是免安装的,非常方便;
第二步,(参考文档:https://blog.csdn.net/weixin_43483799/article/details/111256190)
1. 下完后使用powershell进行完整性校验(可略过),在zip包所在目录处运行certutil -hashfile .\mysql-5.7.31-winx64.zip md5 并等待计算完成。查看输出的哈希值是否和官网给出的相同b606d1dd2a0a2c06e7d9b9ffc7b4dc94。
2. 解压下载的文件,在当前目录下添加my.text,内容为:
[mysql]
# 设置mysql客户端默认字符集,5.5.3版本后支持utf8mb4,其兼容utf8并且支持emoji
default-character-set=utf8mb4
[mysqld]
#设置3306端口,此处使用默认的3306端口即可
port = 3306
# 设置mysql的安装目录,根据实际路径进行修改
basedir=E:\mysql\mysql-5.7.31-winx64
# 设置mysql数据库的数据的存放目录,在basedir后面添加\data即可。这个目录可能不存在,但不需要手动创建
datadir=E:\mysql\mysql-5.7.31-winx64\data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集,此处修改为utf8mb4
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
其中端口不变,路径需要与自己的安装目录保持一致。
3. 在文件目录下进入cmd,进行Mysql服务安装:.\mysqld install;报错:
解决方法:https://blog.csdn.net/xunxue1523/article/details/104707376/
出问题:电脑的服务(services.msc)打不开!!!
解决方法:打开我的电脑,“磁盘(C:)”右键--属性--工具--查错:【xp/w7】开始检查--勾选“自动修复文件系统错误”--开始。如提示:强制卸除,取消;计划磁盘检查,确认,请重启电脑进行检查;【w8/10】检查--扫描驱动器。
4. 接着进行数据库的初始化:.\mysqld --initialize-insecure;
5. 启动Mysql服务:net start mysql;
6. 登录mysql: mysql –uroot,出问题了,报错1045:
查资料,得出方法——修改密码:(参考文档:https://www.cnblogs.com/nxmxl/p/12388342.html)
先停止mysql服务:net stop mysql
再跳过密码登录:mysqld --skip-grant-tables
在bin目录下另开一个命令行,依次执行
>use mysql
>update user set password=password("新密码") where user="root";
>flush privileges;
>exit;
再次报错:
修改mysql数据库的用户名和密码 Unknown column 'password' in 'field list'
解决办法:
语法更新:update user set authentication_string=password('密码') where user='root' and host='localhost';
再次按照上述语句执行完成密码修改后,使用新密码登录,还是报1045的错!!
解决办法:
卸载重装mysql服务:
.\mysqld remove ----卸载;
.\mysqld install ----安装;
7. 开放mysql远程连接:
重启mysql:net start mysql
登录:mysql –uroot –p
进入mysql库: use mysql
命令:
> GRANT ALL ON *.* TO 用户名@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;
>flush privileges;
>exit;
8. Navicat远程连接mysql:
连接好后新建数据库:
选择——字符集ntf-8,general-ci
Navicat连接原Oracle库,遇到问题:
“cannot create oci enviroment”
解决方法:
在工具中替换更新版本的oracle instantclient
参考:https://www.jianshu.com/p/cb88133716a5
Navicat连接原Oracle库,遇到问题:
“身份证明检索失败”
解决方法:
sqlnet.ora修改SQLNET.AUTHENTICATION_SERVICES= (NONE)
参考:https://jingyan.baidu.com/article/3ea514896fc63552e61bba2c.html
9. 最后,使用Navicat自带的功能进行数据传输: