MySQL不能远程登录的解决

Q: 当在另一台机器上登录MySQL时出现如下错误:

ERROR 2003 (HY000): Can't connect to MySQL server on 'x.x.x.x' (111)

A: 原因是MySQL考虑到安全因素,默认配置只让从本地登录

打开 /etc/mysql/my.cnf 文件,找到 bind-address = 127.0.0.1 修改为 bind-address = 0.0.0.0

重启mysql : sudo /etc/init.d/mysql restart

可参考:

> I've already check my /etc/my.cnf file for a "binding"> line.  Its not> there.  I also found an item online that indicated
> adding:
>

Look for the option "skip-networking". This disables TCP/IP so theserver only accepts local connections via the Unix socket. This sounds1
like your situation.
Note that a "could not connect" error means just that. If the problem
was related to user privileges you would get an "access denied" error.

Q: 还一种情况出现类似下面的错误:

ERROR 1045 (28000): Access denied for user 'test'@'x.x.x.x' (using password: NO)

A: 原因是没有给登录用户名设置远程主机登录的权限。

在本地用 root 登录: mysql -u root -p

修改 MySQL 数据库中 user 表中 对应用户名的 Host 字段,将 localhost 改为 %

use mysql;update user set Host = '%' where User = 'username';


作者头像
南宫俊逸创始人

君子好学,自强不息~

上一篇:操作系统 / dev/sda6 分区文件系统出现了问题
下一篇:Linux vmstat命令详解

发表评论

阿里云2021年 618 年中钜惠活动