云服务器Mysql数据库无法在远程电脑mysql workbench中连接成功的解决过程记录

我在腾讯云服务器上安装好了mysql数据库,而且在云服务器上cmd下以及mysql workbench中都可以操作数据库,数据库用户名和密码为root和空。但是我在个人电脑上通过mysql workbench进行链接却不能顺利完成,在网上搜索相关信息逐步进行排查并成功链接的步骤如下:

  1. 现在云服务器控制台的安全组中对“入站规则”和“出站规则”进行添加,在腾讯云服务器中自动有mysql 3306端口的项目,选中即可;但是结果还不行;
  2. 然后baidu了问题,获得如下地址

https://www.cnblogs.com/hometown/p/7076271.html

在该地址中提出的解决方案是在云服务器cmd窗口中进行如下操作:

1、如果服务器有防火墙,需要关一下:

systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
firewall-cmd --state #查看默认防火墙状态(关闭后显示notrunning,开启后显示running)

 

2.给数据库授权远程访问

(1)、允许root用户在任何地方进行远程登录,并具有所有库任何操作权限,

具体操作如下:

在本机先使用root用户登录mysql: mysql -u root -p"youpassword" 进行授权操作:

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

重载授权表:

FLUSH PRIVILEGES;

退出mysql数据库:

exit

 

(2)、允许root用户在一个特定的IP进行远程登录,并具有所有库任何操作权限,具体操作如下: 在本机先使用root用户登录mysql: mysql -u root -p"youpassword" 进行授权操作: GRANT ALL PRIVILEGES ON *.* TO root@"172.16.16.112" IDENTIFIED BY "youpassword" WITH GRANT OPTION; 重载授权表: FLUSH PRIVILEGES; 退出mysql数据库: exit

 

(3)、允许root用户在一个特定的IP进行远程登录,并具有所有库特定操作权限,具体操作如下: 在本机先使用root用户登录mysql: mysql -u root -p"youpassword" 进行授权操作: GRANT select,insert,update,delete ON *.* TO root@"172.16.16.112" IDENTIFIED BY "youpassword"; 重载授权表: FLUSH PRIVILEGES; 退出mysql数据库: exit

 

我根据上文的1:通过控制面板找到防火墙将其关闭了;

再根据上文的2进行处理:发现在cmd中无法执行语句,发现不行,弹出“ERROR 1133 (42000): Can't find any matching row in the user table”,

(3)然后找到下面链接:

https://blog.csdn.net/github_38336924/article/details/82702017

通过如下两个命令:

use mysql;
select Host,User from user;

获得的结果类似如下(过程忘记截图了,直接用该文中的截图),但是第一条的host为localhost

所以我将语句“GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'youpassword' WITH GRANT OPTION”改为“GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'youpassword' WITH GRANT OPTION”,发现也不行。

(4)然后找到这篇文章:https://blog.csdn.net/zhangzehai2234/article/details/82885130

将上图中user为root的host字段值改为%后,然后在使用带有%的Grant all privileges…这个语句以及FLUSH PRIVILEGES,语句执行成功。

再在我的电脑上使用mysql workbench进行远程配置连接数据库,就ok了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jiannywang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值