1. 检查数据库配置参数
连接失败最常见的原因是数据库配置信息错误,需验证以下核心参数:
- 主机地址:确认使用正确的IP或域名,非本地环境需使用公网地址
- 端口号:MySQL默认3306端口,检查是否被修改或冲突
- 账户凭证:验证用户名/密码是否匹配,注意特殊字符转义
建议通过虚拟主机管理面板导出配置文件(如my.cnf)进行交叉比对。
2. 验证网络连通性
网络问题需分层次排查:
- 使用
ping
命令测试主机与数据库服务器的连通性 - 执行
telnet [IP] [端口]
检测端口开放状态 - 检查云服务商的安全组规则,确保出入站放行数据库端口
若本地可连接而虚拟主机失败,可能涉及跨网段路由限制。
3. 排查权限与安全策略
权限问题需在数据库服务器执行以下检查:
- 确认用户具有
@'%'
远程访问权限 - 检查
bind-address
参数是否绑定0.0.0.0 - 查看防火墙规则,临时禁用测试
ufw disable
建议使用GRANT
语句重新分配权限后执行FLUSH PRIVILEGES
。
4. 确认数据库服务状态
通过命令行验证服务运行状态:
- 执行
systemctl status mysqld
查看服务状态 - 检查错误日志
/var/log/mysql/error.log
- 尝试重启服务:
systemctl restart mysqld
注意某些虚拟主机限制重启操作,需通过控制面板操作。
数据库连接失败需系统化排查:从基础配置验证开始,逐步扩展到网络、权限、服务状态等层面。建议保存常用检测命令清单,80%的问题可通过核对配置参数和网络策略解决。复杂场景建议结合数据库日志与主机监控数据进行深度分析。