使用sqlyog登录时出现错误:

连接Docker启动的mysql出现:ERROR 2059 (HY000): Authentication plugin 'caching_sha2_password' cannot be loaded

C:\mysqldata>mysql -h 127.0.0.1 -P 13306 -uroot -p
Enter password: ****
ERROR 2059 (HY000): Authentication plugin 'caching_sha2_password' cannot be loaded: ÕÒ²»µ½Ö¸¶¨µÄÄ£¿é¡£

 

解决方案:

解决方案(在centos7环境下):

1.进入mysql容器

docker exec -it mysql2 /bin/bash

2.进入mysql

mysql -uroot -pmima

3.修改密码

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

 

代码示例:

[root@bogon ~]# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                                NAMES
57cda6ef60ef        mysql               "docker-entrypoint.s…"   51 seconds ago      Up 50 seconds       33060/tcp, 0.0.0.0:33306->3306/tcp   tensquare_mysql
[root@bogon ~]# systemctl mysqld restart
Unknown operation 'mysqld'.
[root@bogon ~]# docker exec -it mysql2 /bin/bash
Error: No such container: mysql2
[root@bogon ~]# docker exec -it tensquare_mysql /bin/bash
root@57cda6ef60ef:/# mysql -uroot -pmima
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
root@57cda6ef60ef:/# mysql -uroot -p    
Enter password: 
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
root@57cda6ef60ef:/# mysql -uroot -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 11
Server version: 8.0.17 MySQL Community Server - GPL

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
Query OK, 0 rows affected (0.01 sec)

mysql> 
 

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐