docker安装mysql后Navicat链接不上的问题

一、docker拉取镜像

docker pull mysql  (默认拉取最新版本的)

二、运行mysql

docker run -p 3308:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql

容器名:mysql   密码:123456

三、查看是否运行

docker ps -a

四、查看启动日志

docker logs mysql

mysql就是刚刚启动的容器名,确认mysql启动是正常的

五、错误

当我用Navicat进行链接的时候,发现下图错误

我们需要下面的处理方式

1、进入mysql客户端

docker exec -it c6c8e8e7940f /bin/bash

其中c6c8e8e7940f是我的mysql的容器名

----等价命令  docker exec -it mysql /bin/bash

mysql -u root -p123456

123456就是mysql的登录密码,在docker run的时候设置的

2、查看用户信息

select host,user,plugin,authentication_string from mysql.user;

 3、重新设置密码

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

newpassword就是新的密码

我把密码设置成了‘mysql’

4、使用Navicat重新连接

 

附:也能是防火墙的问题

sudo firewall-cmd --add-port=3306/tcp  (放开3306的端口)

或者

 sudo systemctl stop firewalld (关闭防火墙)

  • 12
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值