Ubuntu 上的 MySQL 远程连接问题
尽管向用户授予远程访问权限,但用户仍面临远程连接到 MySQL 服务器的困难。本文解决了这些问题并提供了全面的解决方案。
远程连接错误故障排除
一个常见问题是忘记取消注释 MySQL 配置文件中的绑定地址行。对于 MySQL 5.6 及更低版本,此行位于 /etc/mysql/my.cnf 中,而对于 5.7 及更高版本,它位于 /etc/mysql/mysql.conf.d/mysqld.cnf 中。取消注释该行并将其分配给服务器的 IP 地址或 0.0.0.0 以实现不受限制的访问。
检查 MySQL 连接
验证 MySQL 是否正在侦听正确的 IP地址,运行
lsof -i -P | grep :3306
这应该显示带有服务器IP地址的监听端口。如果失败,请确保 MySQL 确实正在侦听指定的 IP 地址。
授予远程访问权限
即使使用正确的绑定地址,远程用户仍可能面临访问问题。要解决此问题,必须为 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 确实如此不起作用,请考虑为您的特定 Linux 发行版安装它。此外,请检查配置文件 /etc/mysql/mariadb.conf.d/50-server.cnf 是否存在任何冲突的绑定地址设置。通过实施这些解决方案,用户可以在 Ubuntu 上成功建立与其 MySQL 服务器的远程连接。
以上是为什么我无法在 Ubuntu 上远程连接到我的 MySQL 服务器?的详细内容。更多信息请关注PHP中文网其他相关文章!