从今天早上起,我无法通过PHP从两个Web服务器连接到我的MySQL,但我可以通过命令行连接
我已经检查过,/ etc / my.conf中没有绑定地址,我正在连接的用户拥有所有权限,并允许连接为
'<user>'@'%'
'<user>'@'localhost'
'<user>'@'127.0.0.1'
'<user>'@'<web-server-1-ip-internal>'
'<user>'@'<web-server-1-ip-external>'
'<user>'@'<web-server-2-ip-internal>'
'<user>'@'<web-server-2-ip-external>'
(上面的外部是完全解析的ip,内部是10.xxx.xxx.xxx)
我试图启动/重新启动并重新安装mysql服务器,错误日志中没有任何内容(/var/log/mysqld.log实际上是几天之久,这很奇怪)。
我正在使用一个简单的PHP脚本来连接
<?php
$link = mysql_connect('<db-server-ip>', '<user>', '<password>');
if (!$link) {
die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';
mysql_close($link);
?>
这给了我
Could not connect: Lost connection to MySQL server at 'reading initial
communication packet', system error: 110
我确实检查了防火墙规则和/etc/hosts.allow和/etc/hosts.deny以及(虽然这不是问题,因为CLI连接工作正常)
任何缺乏重建服务器的想法(反正可能无济于事)