我在同一networking上的其他机器上连接MySql数据库时遇到问题。
无法连接到指定的实例。 MySql错误号1130主机'abc'不允许连接到这个MySql服务器(Pinging ok time 1-3 ms ttl = 128)
我检查了以下内容:
启用TIP / IP RegEdit在hlocal机器….参数.. maxUserpORT和timedelay ..授予所有。 到'根'@'Myipaddress'请帮助到最早..
您收到的错误消息显示您正确连接到远程服务器上的端口3306。 你的networking设置很好。
你有什么是一个ACL的问题 – “主机ABC”不允许连接到这个MySql服务器“。
我对MySQL ACL有些生疏,但是不是授予对'root' @ 'my.ip.address'访问权限,而是将它授予'root'@'abc'
我不知道在Windows上运行MySQL,但是在* nix机器上,您必须打开MySQLconfiguration文件(my.cnf)并告诉MySQL守护进程在您的机器上监听所有的IP地址,而不仅仅是本地主机。
在MySQL 5.0.51中你有:
# Instead of skip-networking the default is now to listen only on # localhost which is more compatible and is not less secure. #bind-address = 127.0.0.1
首先,为用户帐户创build一个ACL来testing连接。
GRANT SELECT ON test.* TO testuser@'%' IDENTIFIED BY 'abc123';
接下来,尝试以testuser身份进行连接。
> mysql -u testuser -p -h mysqlhost_or_ip
如果你连接,很好,你的问题是ACL。 如果无法连接,则可能需要将skip-name-resolve添加到my.cnf,并debugging该DNS不会阻止连接。
您已经有了一些很好的build议来尝试,但是我会补充说,默认情况下不允许从远程访问根用户,这是非常好的理由。
如果您尝试build议的方法,但仍然有问题,您可以尝试使用Wireshark(或类似的)来监视networkingstream量,并确切地看到正在发送和接收的内容,因为这应清楚地显示正在发生和未发生的事情。 这有时比错误消息更能揭示出来。