bgey 发表于 2019-2-20 10:34:16

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

  #docker安装mysql

docker pull mysql
docker run --name mysql -p 3307:3306 -e MYSQL_ROOT_PASSWORD=123 -d mysql
  这个时候navicat远程连接mysql的时候,会提示以下错误:
http://i2.运维网.com/images/blog/201811/20/8dbd19e15908f04612132793b00932bf.png
  解决方法:
1、在虚拟机中登录到mysql容器,然后进入mysql

docker exec -it mysql /bin/bash
mysql -uroot -p
Enter password:
mysql> select host,user,plugin,authentication_string from mysql.user;
http://i2.运维网.com/images/blog/201811/20/271276337ffae089aa17f4b92ff8b3ff.png
备注: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;
http://i2.运维网.com/images/blog/201811/20/907eddc3460aa8314592272ab8273d0d.png
  出现上述图片,再次用navicat远程连接mysql就成功了



页: [1]
查看完整版本: 虚拟机中docker安装mysql远程无法访问解决方法