美文网首页
2003 -Can't connect to MySQL

2003 -Can't connect to MySQL

作者: 还是一打 | 来源:发表于2020-07-06 14:59 被阅读0次
问题已解决,只能借用别人的图

用Navicat for MySQL连接远程数据库时,出现这个问题,然后尝试了很多方法都没能解决这个问题,今天终于找到了。

方法一,Linux防火墙开放3306端口

1、在Linux输入: firewall-cmd --add-port=3306/tcp,或者firewall-cmd --permanent --zone=public --add-port=3306/tcp

提示:FirewallD is not running

步骤一

2、通过systectl status firewalld查看防火墙状态,如果是dead状态,则防火墙为开启。

步骤二

3、通过systemctl start firewalld开启防火墙,没有任何提示则表示开启成功。

步骤三

4、再次通过systemctl status firewalld查看防火墙状态,如果现实running则表示已开启。

步骤四

5、再次执行firewall-cmd --add-port=3306/tcp,或者firewall-cmd --permanent --zone=public --add-port=3306/tcp,提示success,表示开启成功。

6、Navicat for MySQL重新测试连接连接;或者关闭重新打开,再次测试连接。

以上方法转载:https://www.cnblogs.com/rxbook/p/8110143.html

注:如果该方法还没有能解决的话,尝试下面的方法。

方法二,本地配置

1、进入cmd(快捷键win+r,然后输入cmd,确定),然后进入MySQL下的bin目录,如我的MySQL安装在F:\PHP\JieYaBao\mysql

进入bin目录

2、进入MySQL数据库:mysql -u root -p回车,然后输入本地MySQL的密码,默认密码是123456。

进入MySQL

3、执行:use mysql,在执行:select host,user from user;

查看user数据表

4、执行:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '远程数据库的密码' WITH GRANT OPTION;

5、执行:GRANT ALL PRIVILEGES ON *.* TO 'root'@'服务器的IP地址,如118.23....' IDENTIFIED BY '远程数据库的密码' WITH GRANT OPTION;

6、执行:flush privileges;再次执行:select host,user from user;这时可以看到添加了两条数据到表里。Navicat for mysql重新测试连接,或者关闭重开打开在测试连接。

添加%、IP到表中

如果到这里还没有解决的话,那就只能百度尝试其他方法了。。。。。

相关文章

网友评论

      本文标题:2003 -Can't connect to MySQL

      本文链接:https://www.haomeiwen.com/subject/mxiwqktx.html