首页/数据/数据库速查/连接报错 2003 Can't connect to MySQL server

连接报错 2003 Can't connect to MySQL server

ERROR 2003 表示客户端建立不了 TCP 连接,排查顺序:服务是否启动、端口是否监听、bind-address、防火墙与云安全组。

数据库速查数据更新于 2026-10-12
错误码ERROR 2003 (HY000)
含义客户端连不到服务端口
排查顺序服务状态 → 端口监听 → 防火墙/安全组 → bind-address

逐层排查

逐层排查
systemctl status mysqld
ss -lntp | grep 3306
telnet 10.0.0.5 3306   # 或用 nc -vz 10.0.0.5 3306
iptables -L -n | grep 3306
firewall-cmd --list-all | grep 3306
mysql -uroot -p -e "SHOW VARIABLES LIKE 'bind_address'; SHOW VARIABLES LIKE 'port';"

相关配置

相关配置
[mysqld]
bind-address = 0.0.0.0
port = 3306
skip-networking = 0
ERROR 2003 是网络层问题;Can't connect through socket 是本地 socket 问题,两者排查路径完全不同。

易错点

  • 本机防火墙放行不等于云安全组放行,云上实例必须两头都查
  • bind-address 改成 0.0.0.0 需重启实例生效,且要配合最小来源授权

数据来源与参考

  • MySQL 8.0 Reference Manual: Connection Errors and Problems

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌