首页 >数据库 >mysql教程 >为什么我无法在 Ubuntu 上连接到远程 MySQL 服务器?

为什么我无法在 Ubuntu 上连接到远程 MySQL 服务器?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-12-02 18:40:11812浏览

Why Can't I Connect to My Remote MySQL Server on Ubuntu?

Ubuntu 上的 MySQL 远程连接问题

无法与 MySQL 建立远程连接可能是由于配置错误的组合造成的。下面是解决问题的详细说明:

my.cnf 配置

对于 MySQL 5.6 及以下版本,请确保“/etc/mysql/my.cnf”包含“bind-address”指令并将环回地址(“127.0.0.1”)替换为服务器的 IP地址:

# For MySQL version 5.6 and below
bind-address        = your_server_ip

对于 MySQL 5.7 及以上版本,修改“/etc/mysql/mysql.conf.d/mysqld.cnf”指定绑定地址:

# For MySQL version 5.7 and above
bind-address        = your_server_ip

或者,设置“bind-address = 0.0.0.0”以侦听所有 IP地址。

用户权限

要允许特定用户远程访问,请在 MySQL 中的“localhost”和“%”中创建用户:

CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypass';
CREATE USER 'myuser'@'%' IDENTIFIED BY 'mypass';

授予用户必要的权限:

GRANT ALL ON *.* TO 'myuser'@'localhost';
GRANT ALL ON *.* TO 'myuser'@'%';

执行“同花顺特权;”更新权限。

验证网络访问

使用“lsof -i -P | grep :3306”检查 MySQL 是否正在侦听正确的 IP 地址并端口号 (3306)。这应该返回一个输出,表明服务器正在侦听您的服务器的 IP 地址。

故障排除

如果远程连接仍然失败,请检查以下内容:

  • 确保您的防火墙没有阻止端口上的传入连接3306.
  • 重新检查 my.cnf 中的绑定地址设置,并确保它没有被任何其他配置文件覆盖。
  • 确保用于身份验证的用户和密码有效。
  • 考虑将 MySQL 更新到最新版本。

以上是为什么我无法在 Ubuntu 上连接到远程 MySQL 服务器?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn