mysql 5.7不允许在CentOS7上进行docker IP访问

时间:2016-07-19 11:57:46

标签: mysql docker centos

我在CentOS 7.1上安装了Mysql5.7和docker服务。将mysql与命令mysql -u root本地连接是可以的。但是当我尝试使用mysql -u root -h 172.17.0.1 172.17.0.1是本地docker0 ip地址时,它无法连接。

[root@test1 workspace]# mysql -u root -h 172.17.0.1
ERROR 1130 (HY000): Host 'test1.novalocal' is not allowed to connect to this MySQL server

我已经搜索了原因并尝试授予test1.novalocal访问权限,但没有幸运。

mysql> grant all on *.* to root@'test1.novalocal' with grant option;
ERROR 1133 (42000): Can't find any matching row in the user table

还有其他线索吗?

2 个答案:

答案 0 :(得分:1)

尝试:

grant all on *.* to 'root'@'test1.novalocal' identified by 'somepassword' with grant option;

MySQL最新版本附带NO_AUTO_CREATE_USER

  

防止GRANT语句自动创建新用户if   除非认证信息是,否则它会这样做   指定。该语句必须使用指定非空密码   IDENTIFIED BY或使用IDENTIFIED WITH的身份验证插件。

如果需要使用空白密码,您可以disable此模式!

MySQL Workbench甚至警告

  

0行受影响,1警告:1287使用GRANT创建新的   user已弃用,将在以后的版本中删除。

在将来的版本中,您可能需要CREATE a user before GRANT

答案 1 :(得分:0)

172.17.0.1是docker0 ip,而不是你的容器ip。

您可以通过docker inspect yourcontainerid

获取容器