代码改变世界

远程连接MySQL数据库问题总结

  潇湘隐者  阅读(2999)  评论(0编辑  收藏  举报

远程连接MySQL数据库时,陆陆续续遇到了一些杂七杂八的问题,相信很多人也曾经遇到过这类问题,下面总结归纳在下面,方便以后直接查找。

 

1:出现ERROR 2003 (HY000): Can't connect to MySQL server on 'xxx.xxx.xxx.xxx' (111)

[root@cluster-00 ~]# mysql -h 10.20.34.76 -u root -p
Enter password: 
ERROR 2003 (HY000): Can't connect to MySQL server on '10.20.34.76' (111)
[root@cluster-00 ~]# perror 111
OS error code 111:  Connection refused
[root@cluster-00 ~]# 

clip_image001

 

原因1: 服务器10.20.34.76不能访问或ping通.这个很好验证。

原因2: MySQL服务没有启动。这个验证也非常方便。

原因3: MySQL配置了参数skip-networking,注销该参数即可

 

2: ERROR 2003 (HY000): Can't connect to MySQL server on 'xxx.xxx.xxx.xxx' (113)

 

 
[root@cluster-00 ~]# mysql -h 10.20.34.76  -uroot -p
Enter password: 
ERROR 2003 (HY000): Can't connect to MySQL server on '10.20.34.76' (113)
 
[root@cluster-00 ~]# perror  113
OS error code 113:  No route to host

clip_image002

 

关闭防火墙(不推荐)或是开放相关端口(默认为3306)后,问题即可解决。

 

3: ERROR 1045 (28000): Access denied for user 'root'@'xxx.xxx.xxx.xxx' (using password: YES)

[root@cluster-00 ~]# mysql -h 10.20.34.76  -uroot -p
Enter password: 
ERROR 1045 (28000): Access denied for user 'root'@'192.168.9.224' (using password: YES)
[root@cluster-00 ~]# 

原因:root账户权限不够,可能仅仅只用于本地,不能远程登录。需要设置账号权限。注意:这里仅仅是测试图方便,正常情况是不应该开放root的远程访问权限的。出于安全因素考虑,一般应该关闭远程访问。

 

这些是我遇到的一些问题总结,如果后续遇到其它相关问题,继续补充在这篇博客里面。

编辑推荐:
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
阅读排行:
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
点击右上角即可分享
微信分享提示