在“等待初始通信包”时与 MySQL 服务器失去连接,系统错误:2

在“等待初始通信包”时与 MySQL 服务器失去连接,系统错误:2

我刚刚使用 Ubuntu 启动了一个新的 RackSpace VPS。我通常使用 CentOS,因此请原谅我所犯的任何 Ubuntu 新手错误。

我使用 Putty 设置了 SSH 隧道并尝试通过 SQLYog 连接,这是我在 CentOS 上做过无数次的事情。

我收到了错误消息

在“等待初始通信包”时与 MySQL 服务器失去连接,系统错误:2

我正在通过本地连接

SQLYog 127.0.0.1 8115 根

隧道 8115 127.0.0.1:3306

在 my.cnf 中,我有 bind-address 127.0.0.1,但没有 skip-networking。此时我已经用尽了我的知识。

更新:

我的 iptables 是

target     prot opt source               destination
ACCEPT     tcp  --  anywhere             anywhere             tcp spt:domain
ACCEPT     udp  --  anywhere             anywhere             udp spt:domain
ACCEPT     tcp  --  anywhere             anywhere             tcp spt:http
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:mysql
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:1337
DROP       all  --  anywhere             anywhere

我刚刚尝试删除 IPTABLES 中的所有条目,这解决了问题。有人能告诉我我哪里做错了吗?

谢谢

答案1

我建议您检查防火墙 (iptables) 或某些安全软件 (apparmor / selinux) 是否已启用并正在运行。此外,错误日志也会有所帮助。

本手册页可以帮助您调试问题。

答案2

就我而言,问题是由于 SSH 服务器不允许 TCP 转发引起的(我尝试通过 SSH 连接到远程 MySQL 服务器)。

我在远程服务器上执行了此操作来解决:

  1. 在删除服务器上:/etc/ssh/sshd_config在任何文本编辑器中打开该文件。
  2. 将该AllowTcpForwarding no行替换为AllowTcpForwarding yes(如果不存在则将其添加到任何位置)。
  3. 通过执行重新启动 SSH 服务器sudo systemctl restart ssh

相关内容