解决mysql for docker容器报错:Authentication plugin 'caching_sha2_password' cannot be loaded

时间:2021-02-27 21:29:38

为图方便,懒得在mac上安装mysql了,一个是管理不方便,第二个是为了方便多机器同步开发环境。就使用docker安装了。

拉取mysql镜像
docker pull mysql

运行mysql实例
docker run --name mysql -p 12345:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql:latest

就是这么两步,一切就是这么美好:)

结果一连上去,就发现报错了Authentication plugin 'caching_sha2_password' cannot be loaded

Google了一下,找到解决方案:

进入容器
docker exec -it mysql bash

然后以root身份登录mysql
mysql --user=root --password

输入root的密码(默认为'root')最后运行:
ALTER USER 'root' IDENTIFIED WITH mysql_native_password BY 'password';

参考资料:

  1. https://*.com/questions/49194719/authentication-plugin-caching-sha2-password-cannot-be-loaded
  2. https://github.com/passbolt/passbolt_docker/issues/103