当我们需要在本地直接访问远程Linux服务器中网站的数据库时,一般时没有办法直接访问的,那么怎样才能在linux中开源mysql远程连接服务呢
首先我们需要在GRANT命令创建远程连接mysql授权用户root
mysql -u root -p
mysql>GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY '111222' WITH GRANT OPTION;
通过此操作增加root用户授权,然后通过localhost访问,密码 111222:
mysql>GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY '111222' WITH GRANT OPTION;
继续通过命令行授权root用户能够从任何其它的主机或电脑中发起的访问其通配符%.
除此之外我们还要设置Linux防火墙,让用户有端口3306访问权限。
在vi /etc/sysconfig/iptables
配置文件中
找到-A RH-Firewall-1-INPUT -j REJECT –reject-with icmp-host-prohibited,然后在其之前添加
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT
添加完成后重启linux的防火墙:service iptables restart
在配置完mysql的远程连接后,一般就可以远程访问mysql数据库了,但如果出现无法远程访问我们可以看看用户权限是否正确,在user表中有host为localhost和%两条记录,其中的%号可以替换为自己的ip,查看iptables是否停止,没有停止的状态下,无法进行远程连接,或者查看查看/etc/mysql/my.cnf文件中的skip-networking是否时注释状态,没有的话注释以下然后重启,如果还无法访问,查看端口是否正确,或者已经被其他程序占用.
以上就是关于如何在Linux服务器中开启mysql远程连接的办法.