首页 >数据库 >mysql教程 >如何解决 Ubuntu 上的远程 MySQL 连接问题?

如何解决 Ubuntu 上的远程 MySQL 连接问题?

Barbara Streisand
Barbara Streisand原创
2024-12-10 04:18:09263浏览

How to Troubleshoot Remote MySQL Connections on Ubuntu?

在 Ubuntu 上排除与 MySQL 的远程连接故障

在建立与 MySQL 服务器的远程连接时遇到困难可能会令人沮丧。如果您尝试了各种解决方案但没有成功,本指南提供了全面的故障排除步骤来帮助您解决此问题。

配置绑定地址

要允许来自其他计算机的连接,请确保绑定-MySQL 配置文件中的地址行取消注释并设置为计算机的 IP 地址,而不是环回接口。

对于 MySQL 5.6 和下面:

找到 /etc/mysql/my.cnf 并将 #bind-address = 127.0.0.1 行编辑为您的 IP 地址。

对于 MySQL 5.7 和上图:

编辑 /etc/mysql/mysql.conf.d/mysqld.cnf并将#bind-address = 127.0.0.1更改为您的IP地址。

您还可以设置bind-address = 0.0.0.0以接受来自任何IP的连接。

重新启动MySQL

更新配置后,重新启动 MySQL 以应用更改:

systemctl restart mysql

创建远程用户

要向远程用户授予权限,您需要在 localhost 和 '%' 域中创建相同的用户。

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

授予权限

向远程授予适当的权限user:

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

刷新权限

执行以下命令确保权限生效:

FLUSH PRIVILEGES;
EXIT;

验证远程连接

验证如果远程连接工作正常,请尝试从远程计算机登录或使用 lsof 命令检查 MySQL 是否正在侦听配置的 IP。

lsof -i -P | grep :3306

如果命令返回正确的 IP 地址和端口,则应允许远程连接。

其他故障排除

如果问题仍然存在,您可能需要检查以下内容:

  • 确保用户在 localhost 和 % 中都具有必要的权限域。
  • 检查 MySQL 防火墙是否配置为允许远程连接。
  • 检查 my.cnf 配置文件是否有任何错误或缺少的设置。
  • 如果所有其他方法均失败,查阅 MySQL 官方文档或向 MySQL 社区寻求帮助。

以上是如何解决 Ubuntu 上的远程 MySQL 连接问题?的详细内容。更多信息请关注PHP中文网其他相关文章!

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