Docker mysql 连接 “The server requested authentication method unknown to the clien”错误
查了下,出现这个错误的原因是从mysql 5.6开始,mysql密码加密算法更改了。
我装的mysql 8.* ,那么有两种解决方法:
- mysql 版本选择 <= 5.6
- 修改密码
docker-comopse exec mysql bash mysql -uroot -psecret alter user `db_user`@'%' identified with mysql_native_password by 'db_password'; flush privilefes;
解决。
2018-12-5 update:
PS:Laravel中的.env设置的是:DB_CONNECTION=mysql DB_HOST=mysql DB_PORT=3306 DB_DATABASE=db_name DB_USERNAME=db_user DB_PASSWORD=db_pwd
DB_HOST 是docker 中mysql container 名字。
DB_PORT 是mysql container 内部端口
作者:恶魔的果实
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利.