怎么解决mysql不允许远程连接的错误

最近使用Navicat for MySQl访问远程mysql数据库,出现报错,显示“1130 - Host'xxx.xxx.xxx.xxx' is not allowed to connect to this MySQL server“。解决办法如下:

怎么解决mysql不允许远程连接的错误

方法/步骤

  1. 1

    首先看报错窗口。

    怎么解决mysql不允许远程连接的错误

  2. 2

    经查阅,错误原因是:本地IP(xxx.xxx.xxx.xxx)没有访问远程数据库的权限

    于是下面开启本地IP(xxx.xxx.xxx.xxx)对远程mysql数据库的访问权限。

  3. 3

    首先远程连接进入服务器,在cms中输入mysql -u root -p,然后回车,输入密码后回车进入mysql命令行。

    怎么解决mysql不允许远程连接的错误

  4. 4

    输入use mysql;

    怎么解决mysql不允许远程连接的错误

  5. 5

    输入select user,password,host from user;

    可以看到host中只有localhost主机。我们需要将xxx.xxx.xxx.xxx也添加到这里才对。

    怎么解决mysql不允许远程连接的错误

  6. 6

    添加方法如下:

    输入

    grant all privileges on *.* to root@"xxx.xxx.xxx.xxx" identified by "密码";

    这相当于是给IP-xxx.xxx.xxx.xxx赋予了所有的权限,包括远程访问权限。

    然后再输入

    flush privileges;

    这相当于是重新加载一下mysql权限,这一步必须有

    怎么解决mysql不允许远程连接的错误

  7. 7

    再次输入select user,password,host from user;

    可以看到host中已经有了新加的IP。

    怎么解决mysql不允许远程连接的错误

  8. 8

    现在再次用Navicat for MySQl访问远程mysql数据库,已经能正常打开了。

    问题解决。

    怎么解决mysql不允许远程连接的错误

  9. 9

    不过还有一个问题,发现双击打开某张表的时候很慢,至少要3秒。

    原因是:

    当远程访问mysql时, mysql会解析域名, 所以会导致访问速度很慢, 会有2,3秒延时!

    解决办法:

    修改mysql安装目录下的my.ini,加上下面这个配置可解决此问题。在[mysqld]下加入:skip-name-resolve

    保存退出后重启mysql服务。

    然后访问速度就和本地一样快啦。

    怎么解决mysql不允许远程连接的错误

    END

经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。


转载于:https://my.oschina.net/airship/blog/484455

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
远程连接MySQL数据库时显示"Can't connect to MySQL server (10060)"错误,可能有以下几个原因: 1. 网络不通:请检查是否能够ping通目标数据库主机。如果无法ping通,可能是网络连接有问题。 2. 防火墙设置:请确认防火墙是否放行了MySQL的进程,并且是否屏蔽了MySQL的3306端口。如果防火墙阻止了该端口,需要开放特定端口。例如,在iptables中可以使用以下命令开放3306端口: /sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT。 3. MySQL的账户设置:请确认是否允许MySQL账户进行远程连接。可以尝试在MySQL中执行以下命令,允许任何远程主机访问数据库mysql -u root -p //登录MySQL mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; //任何远程主机都可以访问数据库 mysql> FLUSH PRIVILEGES; //需要输入此命令使修改生效 mysql> EXIT; //退出 此外,还可以通过修改MySQL表来实现远程连接。例如,执行以下命令可以修改host字段为'%',从而允许任何远程主机连接: mysql -u root -p mysql> use mysql; mysql> update user set host='%' where user='root'; mysql> select host, user from user; 总之,远程连接MySQL错误10060主要有网络不通、防火墙设置和MySQL账户设置三个方面的原因。根据具体情况检查网络连接、防火墙规则和MySQL账户设置,应该能够解决该问题。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [MySQL错误:Can't connect to MySQL server (10060)远程连接数据库失败](https://blog.csdn.net/m0_37184444/article/details/77745781)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [MySQL数据库连接不上服务器 (10060错误)](https://blog.csdn.net/weixin_40581279/article/details/119906716)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值