在docker安装好mysql之后 端口也设置好,同时云服务器的端口3306也打开。但是使用navicat 连接不上。

请添加图片描述

其实是因为Navicat只支持旧版本的加密,需要更改mysql的加密规则

进入MySQL容器,登陆MySQL

docker exec -it mysql /bin/bash

登陆mysql**

mysql -u root -p

输入密码

这个时候会提示输入密码,输入即可。

进行授权远程连接授权

GRANT ALL ON . TO ‘root’@‘%’;

刷新权限

flush privileges;

更改加密规则

ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘password’ PASSWORD EXPIRE NEVER;

更新root用户密码

ALTER USER ‘root’@‘%’ IDENTIFIED WITH mysql_native_password BY ‘123456’;

刷新权限

flush privileges;

然后就可以使用 Navicat 连接数据库了。

Logo

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

更多推荐