mysql5.7 升至 8.0 出现的问题

身份验证

由于 MySQL 8.0.11默认使用的是caching_sha2_password身份验证方法
所以 之前在5.7创建的用户导致登录不了

 The server requested authentication method unknown to the client

解决方案

  • 方法一、修改默认加密方式mysql_native_password

1、 编辑my.cnf文件,更改默认的身份认证插件。

$ vim /etc/my.cnf

2、在[mysqld]中添加下边的代码

default_authentication_plugin=mysql_native_password

3、重启mysql

$ service mysqld restart
  • 方法二、修改登陆不上账号的加密方式

1、选择 mysql 数据库,在 user 表中添加创建新的用户

mysql> CREATE USER 'user'@'localhost' IDENTIFIED BY '你的密码';

2、修改 新创建用户 权限

mysql> GRANT ALL PRIVILEGES ON *.* To 'user'@'localhost';

3、修改用户验证方式

ALTER USER 'user'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';

4、刷新权限

FLUSH PRIVILEGES; #刷新权限 

你可能感兴趣的:(mysql)