SQLyog连接阿里云上的docker mysql出现错误,错误代码分别是2003,2058

在这里插入图片描述
今天在使用SQLyog连接阿里云上的docker容器中的mysql出现了错误。经过网上查找(原文地址),解决了问题。

一、解决SQLyog出现的2003错误

1.配置云服务器的安全规则,开放3306端口

在这里插入图片描述
配置规则之后再次连接,又报了个错误,查找发现原因是:因为版本问题,mysql 密码加密方法变了。
在这里插入图片描述

二、解决SQLyog出现2058错误(如图)

在这里插入图片描述

1.通过docker exec命令使得能在docker容器中使用命令

docker exec -it some-mysql bash

其中some-mysql可以是容器的id,或者name

2.使用命令mysql -uroot -p登录mysql

3.执行命令

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

其中password就是自己设置root的密码
‘root’@‘localhost’:表示mysql账号名,具体参见官方文档

这里直接使用

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

或者

ALTER USER 'root' IDENTIFIED WITH mysql_native_password BY '123456';

来自mysql官方文档 :An account name consisting only of a user name is equivalent to ‘user_name’@’%’. For example, ‘me’ is equivalent to ‘me’@’%’.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章