安装Mysql8走过的坑

坑one安装mysql8后无法登陆,初始密码找不到(下载地址https://dev.mysql.com/downloads/mysql/

安装mysql步骤:

i1:按照下图依次点击进入下载页,根据自己需要下载相应操作系统下的mysql压缩包,我这里选择的是windows

i2:解压后,配置环境变量,分别配置MYSQL_HOME的系统变量(路径为解压后的路径),并在path中增加%MYSQL_HOME%\bin;

i3:管理员身份打开cmd,首先mysqld --initialize-insecure --user=mysql进行初始化,初始化后会生成一串初始化密码(一定要记住),登陆的时候要用。

i4:mysqld -install安装服务。

i5:net start mysql启动服务。

启动后可以登陆mysql修改初始化的密码,如果记录的刚才的密码就比较简单了,直接用密码登陆,修改mysql(数据库名)的数据库下面的user表里user='root' and host='root'的密码authentication_string(这是记录密码的字段),用正常的update语句就可以。

如果没有记录初始化密码则需要利用mysql无密码进行启动服务的方式,具体步骤如下:

1、关闭mysql服务;

2、打开第一个cmd窗口,进入安装路径的bin路径,输入mysqld --console --skip-grant-tables --shared-memory;

3、打开第二个cmd进入bin路径,用mysql -u root即可进入,接下来可以安装之前修改密码的方法进行修改。

至此,可以从第一个坑爬出来了

--------------------------------------------------------------------------------------------------------------------------------------

坑two、安装成功后,cmd可正常访问数据库,但是navicat连接报错1251

原因:mysql8与mysql5的加密方式不同,之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password,但是navicat驱动还未及时更改

解决方案有两种:

一种是升级navicat驱动,一种是把mysql用户登录密码加密规则还原成mysql_native_password

这里讲第二个方案,

命令行进入MySQL数据库

输入以下指令,逐行输入,每行后加一个回车

ALTER USER 'root'@'localhost' IDENTIFIED BY 'password(你的密码)' PASSWORD EXPIRE NEVER; #修改加密规则

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password(你的密码)'; #更新一下用户的密码

FLUSH PRIVILEGES; #刷新权限

执行完以上操作,navicat就可以正常连接了。

猜你喜欢

转载自blog.csdn.net/u010215648/article/details/81750606