MySQL远程访问失败的解决

 

一台ubuntu服务器上3306端口运行MySQL服务,使用SQL-Front连接,失败。

处理:

1.防火墙

登录ubuntu服务器,查看iptable或者ufw,确认不是防火墙的问题。

2.netstat -an|grep 3306

tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN

发现mysql只监听在本地127.0.0.1,3306端口就没对外开放,外部当然无法访问。

修改也很简单, 进入到mysql的配置文件所在目录(/etc/mysql/my.cnf)下,找到文件中的如下内容:

bind-address  = 127.0.0.1

将bind-address注释掉。

再次netstat查看:

tcp        0      0 0.0.0.0:3306          0.0.0.0:*               LISTEN

3.还是无法访问。接着查看数据库连接账户的权限。

>mysql -u root -p  //root登录

>select * from mysql.users; 

%代表接受任意主机的连接。

修改:

GRANT ALL PRIVILEGES ON *.* TO 'use'@'%' IDENTIFIED BY  'password' WITH GRANT OPTION;

4.重启mysql服务/etc/init.d/mysql restart

你可能感兴趣的:(mysql,ubuntu)