远程连接MySQL时连接不成功的解决方案

问题描述:远程访问远程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。。。

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值