为什么我无法远程连接到 MySQL?

为什么我无法远程连接到 MySQL?

我在服务器上设置了一个 MySQL 数据库,我创建了一个用户并从任何地址向该用户授予了所有权限,但我无法通过我使用的任何软件远程连接到数据库。

我已检查端口是否正确,跳过网络已关闭,绑定地址未设置为仅限本地。我还应该检查什么?

答案1

如果您有 root@'%' 这样的用户,您应该能够连接。您应该将其更改为 root@'xx.xx.xx.%' 而不是 root@'%',因为您不希望远程访问如此开放。

您可能需要检查您的防火墙设置。

尝试这个

service iptables stop

然后尝试再次连接

答案2

检查事项:

  • MySQL 正在运行吗?
  • 您是否已努力FLUSH PRIVILEGES;确保您的补助金已更新?
  • 可以服务器接触外面的世界?
  • 本地 TCP 连接可以工作吗?mysql --host=127.0.0.1 --port=3306 -uroot -p
  • 入站端口是否可以通过nmap或访问telnet

除此之外,您还必须提供更多信息:当您尝试从 MySQL 客户端远程访问时遇到的确切错误。

答案3

my.cnf 中的绑定地址可能是 127.0.0.1。这样就不会允许外部访问。将其更改为您的互联网 IP 即可解决此问题。

答案4

检查以确保 Windows 防火墙没有阻止端口 3306。

我在 Windows 10 服务器上采取的步骤:

  1. 开始 > “允许应用通过 Windows 防火墙”
  2. 查找“MySQLxx”
  3. 按“更改设置”
  4. 确保“私人”和“公共”均已选中

相关内容