我已经在Microsoft Azure VPS(2012服务器)上安装了MySQL 5.5。 我创build了一个用户帐户,告诉它允许任何主机,并在端口3306上创build一个EndPoint 。我可以使用RDP远程连接到VPS,并在本地连接就好。
我还允许MySQL安装程序在Windows中创build所需的防火墙规则,并且似乎是有效的(允许传入TCP到端口3306)。
我错过了什么?
错误是“无法连接到MySQL服务器(4)2003”
而且,我似乎无法findMySQL日志文件。
另外,这是我的mysql.user表的转储:
Host User Password ------------------------------------------------------------- localhost root *0735EF2BBDF0D50FB780E9B58198D7260991E311 127.0.0.1 root *0735EF2BBDF0D50FB780E9B58198D7260991E311 ::1 root *0735EF2BBDF0D50FB780E9B58198D7260991E311 % cbmeeks *3CA067E806B5BB2DF87A89D517BBAF80DD22C27A
cbmeeks或root都cbmeeks远程工作。
您需要在mysql.user表中具有主机特定的条目。
mysql> use mysql; Database changed mysql> select Host,User,Password from user; +------------+------+-------------------------------------------+ | Host | User | Password | +------------+------+-------------------------------------------+ | localhost | root | *62395BB52702DE50773EBF629DD4AE90F07FFD94 | | sgeorge-mn | root | | | 127.0.0.1 | root | *62395BB52702DE50773EBF629DD4AE90F07FFD94 | | ::1 | root | | | localhost | | | | sgeorge-mn | | | | localhost | suku | *EAF5C8242B88A14545BB61062D64CA5207DD1A37 | +------------+------+-------------------------------------------+ 7 rows in set (0.01 sec)
所以,请跟我来创build这样一个有权限远程访问的用户。
[ADDED]如果你已经有这样的用户,那么请尝试按照我提到的步骤
我讨厌回答我自己的问题,但解决scheme就在我面前。 我做了每一个逻辑尝试,最终发现它确实是Windows防火墙。
我知道,显然阻塞端口将阻止它远程连接。
所以那是我看的第一个地方。 但是,我没有注意到,入站规则被设置为“域”。 我把它设置为“公共”,它的工作。
不是Windows防火墙规则的专家,但希望这将有助于某人。
由于我将有一个Azure VPS连接到另一个Azure VPS,所以可能值得一提的是,防火墙规则应该调整为只允许来自允许的VPS的连接。 但这是一个不同的话题。 希望这会帮助别人。
感谢@Suku指点我的帮助页面。
我有同样的头痛错误(错误是“无法连接到MySQL服务器(4))大约3个星期,最后我发现我的问题是基于防火墙的规则。
解决办法是要求我的主机提供商打开端口3306,但在OUT方式。
不要试图期望这是一个很大的解决scheme,因为在configuration中有很多事情要考虑,但是嘿! 我终于明白了,这一切都是关于我的提供商的防火墙。
希望有人帮助这个帮助。