我知道这似乎是一个已经看到的问题,但我在互联网上进行了搜索,但没有发现与我完全一样的情况
我正在使用位于 VPS 上的远程 MariaDB 数据库开发 JavaFX 应用程序。它曾经工作得很好,但现在不行了。为了跟踪这个问题,我尝试回到基础知识并从我的终端远程访问我的数据库。问题是:它不再起作用了。我只得到
ERROR 2002 (HY000): Can't connect to MySQL server on '192.110.XX.XX' (115)
并且基本上是我的 telnet 超时错误。
我可以从 VPS 内访问我的数据库,没有任何问题,并且我的 VPS 没有防火墙(我知道,这是不好的做法)并且打开了 3306 端口(
sudo netstat -tulpn | grep LISTEN
给出以下内容)
tcp 0 0 127.0.0.53:53 0.0.0.0:* LISTEN 2705239/systemd-res
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 271/sshd: /usr/sbin
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 704/exim4
tcp6 0 0 127.0.0.1:8005 :::* LISTEN 467941/java
tcp6 0 0 :::3306 :::* LISTEN 2704768/mysqld
tcp6 0 0 :::8080 :::* LISTEN 467941/java
tcp6 0 0 :::80 :::* LISTEN 337/apache2
tcp6 0 0 :::22 :::* LISTEN 271/sshd: /usr/sbin
tcp6 0 0 ::1:25 :::* LISTEN 704/exim4
如您所见,我的问题似乎与绑定地址无关,因为我可以在所有互联网上阅读。从我的本地计算机,我可以
ssh
到我的 VPS,但无法使用端口 3306 远程访问 mysql
,即使我的防火墙已完全关闭。我尝试将 telnet
与端口 3306 一起使用,甚至这给了我一个超时,而它与端口 22 完美配合。
基本上,我在互联网上找到的两个主要想法是注意绑定端口并确保防火墙不处于活动状态。正如我已经检查过的那样,我完全没有想法。你们中有人有线索吗?
从屏幕截图中可以清楚地看到,您在 ipv6 地址上打开了端口 3306,而不是 ipv4。
并且您正在尝试通过 ipv6 访问它。那样是行不通的。
你有选择