解决不能远程连接Linux服务器上MySQL的问题


今天在实验室的服务器上安装MySQL,装好后却发现远程的电脑无法连接到MySql服务器。服务器操作系统是Ubuntu 14.04。于是在网上查了些资料,折腾了半天后终于搞定了,下面是具体的步骤。

1)安装好MySQL后,修改如下文件

sudo vim /etc/mysql/my.cnf【如果说你不太会用Vi编辑器,你可以用SSH登陆后,将文件移除手动更改后,在上传到服务器覆盖该文件即可】

找到bind-address = 127.0.0.1,将绑定地址改成你服务器的地址【就是你的服务器机器的ip】

2)然后启动MySQL服务,或者在启动服务的前提下重启服务

sudo /etc/init.d/mysql start (脚本启动)或者service mysqld start(命令启动)

sudo /etc/init.d/mysql restart(脚本重启)或者 service mysqld restart(命令重启)

3)打开MySQL
sudo mysql -uroot -p
输入密码,进入MySQL命令行,在MySQL命令行中执行下列命令
grant all PRIVILEGES on *.* to root@'%' identified by 'onePassword';
执行
use information_schema【或者其它的数据库实例】

select * from user_privileges;

4)如果查询有如下的结果:'root'@'%',说明mysql已经授权远程连接。
退出MySQL命令行,在终端中执行
iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
将3306端口添加到iptables中。

5)最后执行以下命令,重新启动MySQL服务

sudo /etc/init.d/mysql restart(脚本重启)或者 service mysqld restart(命令重启)

然后其他的电脑就可以远程连接服务器上的MySLQ了,问题虽然不大,也不是第一次遇到了,但是每次都要花费很多的时间才能解决,做个小记录,以防今后再碰到类似的问题,又要从头开始。

相关内容