无法从外部以管理员身份连接到 mysql

无法从外部以管理员身份连接到 mysql

我有一个专用服务器(CentOS 5.3),但我无法从外部以管理员身份登录 mysql,但是当我在服务器的命令行上时我可以这样做。我假设某个地方有一个设置可以为我提供所需的访问权限,但我不知道在哪里。

答案1

有几个因素,您的问题没有包含足够的信息来了解您面临的是哪些因素。

首先确保您的服务器正在侦听您的网络端口。仅仅监听127.0.0.1并不会减少它,因为它只允许环回连接到本地主机。你需要听0.0.0.0

bind-address=0.0.0.0

接下来确保您正在使用 TCP 网络。 Mysql 只能使用本地套接字,因此请确保在配置中注释掉这一行:

#skip-networking

完成后,您应该有一个 mysqld 守护进程在监听。你可以这样测试:

# netstat -lntp | grep mysqld
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      2652/mysqld

(请注意,我的示例输出仅在本地主机上侦听!您的示例输出应该使用您的接口 IP 进行读取,或者0.0.0.0如果这不起作用。)

最后,您需要在 mysql 本身中设置正确的权限。每个用户都有一个允许连接的主机。如果您运行GRANT语句并且只授予权限ON 'localhost'或类似的东西,您仍然无法远程登录。您需要包含您想要允许的特定主机或'%'任何主机。

相关内容