一、启动容器
首先启动docker mysql:
docker run -itd --name mysql -p 13306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql
然后配置Navicat连接:
报错:
Client does not support authentication protocol requested by server;consider upgrading MySQL client。
二、原因
查资料了解到,原因是mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password。我这里用的是mysql最新版,很可能是这个原因。
三、解决
1.进入docker命令行:
mysql -h localhost -u root -p
2.修改加密规则
ALTER USER 'root'@'%' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER;
3.更新一下用户的密码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
4.刷新权限
flush privileges;
5、连接成功
作者:陈敬(公众号:敬YES)
出处:http://www.cnblogs.com/janes/
博客文章仅供交流学习,请勿用于商业用途。如需转载,请务必注明出处。