用docker运行mysql后远程连接mysql出现SQLYOG:2058/navicat:1251的错误。
意思是客户端不支持caching_sha2_password的加密方式。
1.进入mysql容器去执行 select user,host,plugin from mysql.user where user = 'root';查看一下
2.你会发现plugin是caching_sha2_password,我们把它换成mysql_native_password加密方式就完事了
执行如下两条sql:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
3.别忘了执行命令flush privileges使权限配置项立即生效,问题轻松解决。