一、本地安装原因:
进行单元测试之前,或者UI自动化测试之前,为了不影响开发的数据库坏境,需要在本地安装一个相同的数据库,来实现*的对数据库进行增删改查、甚至清除工作
二、安装步骤:
a、在网上找一个包,选择for Windows的版本 https://dev.mysql.com/
b、下载后,按照流程安装,注意点:
1、若只需要安装sqlserver,选择【custom】版本即可
2、数据库默认的端口为3306,未占用的情况下,不需要修改
3、需要记住设置的mysql名字和密码。后续启动时需要用
4、可以去掉勾选开机自启动项
c、安装完成后,需要去设置环境变量:
1、在path环境中加入:C:\Program Files\MySQL\MySQL Server 8.0\bin(数据库默认安装路径)
2、测试是否设置成功:去cmd中执行【mysql -u root -p】,然后输入数据库密码,可以正常进入mysql即可
d、cmd启动数据库;
1、启动数据库:【net start mysql80】,提示数据库正在启动。。启动成功 (启动时,有出现【发生系统错误5。】的情况,详见三解决)
2、停止数据库:【net stop mysql80】,提示数据库正在关闭。。关闭成功
e、使用navicat-premium12 去连接数据库(测试连接时,有出现【Authentication plugin‘caching_sha2_password‘....】的情况,详见三解决)
f、将开发数据库数据传输到新创建的数据库【data transfer】
1、tool->data transfer
2、选择开发数据库和新创建的数据库,进行传输数据即可(前提:当前navicat中已经连接过开发数据库)
三、安装错误情况
a、使用cmd启动服务时,显示【发生系统错误 5。】
解决办法:使用管理员方式启动cmd,即可成功。
b、使用navicat测试连接数据库时显示【Authentication plugin‘caching_sha2_password‘....】
原因:mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password, 解决问题方法有两种,一种是升级navicat驱动,一种是把mysql用户登录密码加密规则还原成mysql_native_password.
解决办法:使用加密还原的方法
1. 管理员权限运行命令提示符,登陆MySQL
mysql -u root -p
password #登入mysql
2. 修改账户密码加密规则并更新用户密码
ALTER USER ‘root‘@‘localhost‘ IDENTIFIED BY ‘password‘ PASSWORD EXPIRE NEVER; #修改加密规则
ALTER USER ‘root‘@‘localhost‘ IDENTIFIED WITH mysql_native_password BY ‘password‘; #更新一下用户的密码
3. 刷新权限并重置密码
FLUSH PRIVILEGES; #刷新权限
4、再重置下密码:alter user ‘root‘@‘localhost‘ identified by ‘111111‘;
现在再次打开Navicat Premium 12连接MySQL问题数据库就会发现可以连接成功了