mysql 设置远程用户名和密码错误,远程访问mysql的错误解决方法

远程访问mysql经常会出现下面的一些错误,我用自己经过了一些小波折后找到了一些解决方法,不过我的mysql是转载linux系统上的,不过windows平台也是类似的原理。下面是学习啦小编跟大家分享的是远程访问mysql的错误解决方法,欢迎大家来阅读学习。

远程访问mysql的错误解决方法

工具/原料

xshell

mysql

方法/步骤

如果出现下面这种情况,一般是防火墙屏蔽了mysql的3306端口,我们需要开启3306端口

d7f73fb5ee34249ddba509d9d98e1f5e.png

执行下面的命令

[root@doctortang bin]# /sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT

[root@doctortang bin]# /etc/rc.d/init.d/iptables save

[root@doctortang bin]# /etc/init.d/iptables restart

cb713d0d1d2ee7b6183ec0ccd5aed1ee.png

如果执行查看防火墙状态的命令:

[root@doctortang bin]# /etc/init.d/iptables status

会出现下面情况则说明开启3306端口成功了(就是下面图中的3306)

ec041a688e25527f047e20c575e81d0b.png

此时再访问有可能会遇到下面这种图的报错,这是因为我们还没给mysql设置一个可以让我们从我们当前ip远程访问的用户及密码(我自己的本地ip为192.168.1.140)

8cc2d13b193260262a6ec407c0f10494.png

现在假设你想让用户名为root的用户从ip为192.168.1.140的主机连接到mysql服务器,并使用123456作为密码,可以执行下面的命令(为了使修改立即生效,可多次执行FLUSH PRIVILEGES命令,我这里执行了两次)

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.140' IDENTIFIED BY

-> '123456' WITH GRANT OPTION;

mysql> FLUSH PRIVILEGES;

mysql> FLUSH PRIVILEGES;

d9db1af434821d0ed27d61ed9c7f605d.png

6此时再以用户名root,密码123456去访问mysql就可以了

7这里说多两种我试过的适合其他情况的设置,第一种就是如果想任何主机都能以用户名为root,密码为123456都能访问mysql,可以执行下面命令

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

c65411132d59e49fd0535b3070cdcbc7.png

8然后让修改生效

mysql> FLUSH PRIVILEGES;

这样就可以在其它任何的主机上以用户名root和密码123456远程访问mysql了

9另一种是如果只想用户root从ip为192.168.1.6的主机只能访问其中某一个数据库名为db,并使用123456作为密码,可以执行命令

mysql>GRANT ALL PRIVILEGES ON db.* TO 'root'@'192.168.1.3' IDENTIFIED BY '123456' WITH GRANT OPTION;

mysql>FLUSH PRIVILEGES;

远程访问mysql的错误解决方法相关文章:

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值