虚拟机中docker安装mysql远程无法访问解决方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了虚拟机中docker安装mysql远程无法访问解决方法相关的知识,希望对你有一定的参考价值。

#docker安装mysql

docker pull mysql
docker run --name mysql -p 3307:3306 -e MYSQL_ROOT_PASSWORD=123 -d mysql

这个时候navicat远程连接mysql的时候,会提示以下错误:
技术分享图片

解决方法:
1、在虚拟机中登录到mysql容器,然后进入mysql

docker exec -it mysql /bin/bash
mysql -uroot -p
Enter password: 
mysql> select host,user,plugin,authentication_string from mysql.user;

技术分享图片
备注:host为 % 表示不限制ip localhost表示本机使用 plugin非mysql_native_password 则需要修改密码

2、修改密码

mysql> use mysql;
mysql> alter user ‘root‘@‘%‘ identified with mysql_native_password by ‘123‘;
mysql> flush privileges;
mysql> select host,user,plugin,authentication_string from mysql.user;

技术分享图片

出现上述图片,再次用navicat远程连接mysql就成功了

以上是关于虚拟机中docker安装mysql远程无法访问解决方法的主要内容,如果未能解决你的问题,请参考以下文章

让虚拟机中的MySQL可以被主机访问

VMware虚拟机中的CentOS7安装Nginx后本机无法访问的解决办法

虚拟机中docker承载的微服务注册到nacos无法访问问题

虚拟机中docker承载的微服务注册到nacos无法访问问题

在centos虚拟机中添加远程Myql连接问题总结

win7系统本地怎么连接Oracle VM VirtualBox虚拟机中docker容器中的ubuntu镜像中的mysql