问题描述:远程访问远程MySQL时,提示连接不上。
解决过程:
一、开启远程访问:
use mysql;
update user set host = “%” where user = “root”;
flush privileges;(不能忘记这一步)
详情如下图:
另附上关闭 远程访问(可忽略)
关闭远程访问:
use mysql;
update user set host = “localhost” where user = “root” and host= “%”;
flush privileges;
二、若步骤一过后未成功,键入命令netstat -ntpl,查看3306端口;发现为127.0.0.1
修改mysqld.cnf文件中的bind-address,改为0.0.0.0(表示无限制,也可改为你指定的ip)
记得要重启mysql服务:(附mysql一些相关命令)
1、查看mysql版本
方法一:status;
方法二:select version();
2、Mysql启动、停止、重启常用命令
a、启动方式
1、使用 service 启动:
[root@localhost /]# service mysqld start (5.0版本是mysqld)
[root@szxdb etc]# service mysql start (5.5.7版本是mysql)
2、使用 mysqld 脚本启动:
/etc/inint.d/mysqld start
3、使用 safe_mysqld 启动:
safe_mysqld&
b、停止
1、使用 service 启动:
service mysqld stop
2、使用 mysqld 脚本启动:
/etc/inint.d/mysqld stop
3、mysqladmin shutdown
c、重启
1、使用 service 启动:
service mysqld restart
service mysql restart (5.5.7版本命令)
2、使用 mysqld 脚本启动:
/etc/init.d/mysqld restart
三、经过步骤二若还出错,查看系统防火墙的3306端口是否开放
键入命令:sudo iptables -L -n | grep 3306,查看端口状况,发现没有显示,即没有开放3306端口,如下图:
替iptables新增一条3306的端口允许通过规则,在重新检查一下iptables ,如下图:
新增命令:sudo iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
OK。。。