【问题标题】:Can't connect to MariaDB server remotely using TCP无法使用 TCP 远程连接到 MariaDB 服务器
【发布时间】:2021-09-15 12:55:27
【问题描述】:

我知道这种问题已经被问了一千次了,但我仍然需要这样做,因为我认为我在这里做的所有事情都没有帮助我。

所以我正在尝试远程连接到我的 MySQL 服务器(由 Raspbian 10、Raspberry Pi 4 上的 MariaDB 10.3.29 托管)。我一直在尝试使用我的手机上的地址 192.168.1.4、另一个网络上的另一台计算机、在 Windows PC 上使用 mysql 服务器命令行,甚至在 iOS 上使用 QueryDB 应用程序进行连接。'

我得到的确切错误信息是:

ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.1.4:3306' (10060)

配置文件:

/etc/mysql/mariadb.conf.d/50-server.cnf

是否可以从任何 IP 进行连接:

bind-address        = 0.0.0.0

我认为应该如此。 此外,我的 ufw 允许使用 mysql,并且我正在使用的端口 3306 允许从任何地方访问。

我已经这样做了:

GRANT ALL ON *.* TO 'user'@'%' IDENTIFIED BY 'my_pass';
FLUSH PRIVILEGES;

并且确保我已经检查过

SELECT User, Host FROM mysql.user;

一切似乎都很好。我仍然无法远程连接。当然,我可以从 localhost 连接,就像我局域网上的另一台计算机一样。

我还在华硕路由器设置中打开了端口 3306,如下所示:

ASUS router port forwarding

应该是这样吗? 我真的无法弄清楚导致这个问题的任何原因。根据我收集到的信息,一切都应该正常工作。谢谢!

【问题讨论】:

  • edit 描述您尝试连接的方式 - mysql 客户端、python 程序,什么? - 以及您收到的确切错误消息。
  • 你能 ping mysql 服务器吗?如果是,请尝试telnet 192.168.1.4 3306 并将 ping & telnet 的结果粘贴到此处。
  • 从不同的网络尝试这些:Pinging 192.168.1.4 with 32 bytes of data: Request timed out. Reply from 10.64.201.250: Destination net unreachable. Reply from 10.64.201.250: Destination net unreachable. Reply from 10.64.201.250: Destination net unreachable. Ping statistics for 192.168.1.4: Packets: Sent = 4, Received = 3, Lost = 1 (25% loss)telnet 192.168.1.4 3306 Connecting To 192.168.1.4...Could not open connection to the host, on port 3306: Connect failed
  • 我不确定自己是否是个白痴,但我想澄清一下,我想从世界任何地方访问我的 MySQL。而且我认为 3306 端口中的 IP 192.168.1.4 被数百万人使用。那么我需要其他东西才能做到这一点吗?这不是本地IP而不是公共IP吗?顺便说一句,我也在使用 phpmyadmin。

标签: python mysql mariadb raspbian


【解决方案1】:

好的,所以在搜索了三天后,我得到了这个。

问题不在于 MySQL,而在于 Apache。我需要转发 Apache 的 80 端口来连接我的公共 IP 地址,当然不是本地的。

现在可以了!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-11-28
    • 1970-01-01
    • 1970-01-01
    • 2021-07-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多