MySQL连接2059报错问题

MySQL版本是8.0.4

由于新版本的MySQL新特性导致的。

mysql> select Host,User,plugin from mysql.user;
+-----------+------------------+-----------------------+
| Host      | User             | plugin                |
+-----------+------------------+-----------------------+
| %         | root             | caching_sha2_password |
| %         | vuluser          | caching_sha2_password |

查询结果如上,因为认证方式改变导致的。在老版本里,一般使用加密方式为mysql_native_password。所以可以直接修改为老版本的加密方式,或者升级新版本的加密方式。

这里采用更改为老版本的加密

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '密码';

ALTER USER 'vuluser'@'%' IDENTIFIED WITH mysql_native_password BY '密码';

或者,配置一下/etc/my.cnf

[mysqld]

default_authentication_plugin=mysql_native_password

改完连接没问题,顺便记一下,新版本的授权方式与老版本有点不同

老版本可以这样写:grant all on *.* to test@'%' identified by '密码';

新版本不能,可以写成这样子:grant all on *.* to test@'%';





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值