MySQL远程连接不成功

MySQL远程连接不成功

我尝试远程连接到 MySQL 数据库大约 10 个小时,但没有成功。

服务器运行的是 Debian。

my.cnf正确配置bind-ip 0.0.0.0且没有跳过网络。

lsof -i :3306显示从连接 IP 到服务器的已建立连接,但随后消失。

当在服务器上使用 tcpdump 端口 3306 和“(tcp-syn|tcp-ack)!=0”时,我在尝试连接到它时收到以下信息:

10:55:44.195273 IP server2.xxx.xxx.mysql > xxx.xxx.12.89.53920:标志 [R],seq 1740903883,win 0,长度 0

连接的用户被授予所有访问权限%

我不知道还要做什么。服务器正在运行ISPConfig防火墙bastille,但即使关闭它也不起作用。我能够连接到本地数据库和 LAN 地址。

这是我尝试连接到数据库服务器时得到的结果:

“错误 2013 (HY000):在‘读取授权数据包’时失去与 MySQL 服务器的连接,系统错误:2“没有这样的文件或目录”

我的cnf

Skip_name_resolve 已开启

绑定地址已注释

有什么线索吗?

答案1

TCP 网络显然正在工作:您获得了一个连接,并且替代连接工具(例如)nc也演示了这一点。

它要么是 MySQL 本身阻止传入连接,要么是您的版本已使用 TCP Wrappers 进行编译,并且设置为需要反向 DNS,甚至可能需要前向/反向匹配。

MySQL 文档B.5.2.5 主机“host_name”被阻止解释说,太多不完整的连接将导致原始 IP 地址被阻止,直到mysqladm flush-hosts运行为止。或者您可以登录并执行FLUSH HOSTS

要检查 TCP 包装器配置,您需要查看/etc.hosts.allow/etc/hosts.deny

相关内容