CentOS LNMP环境数据库连接问题可按以下步骤排查解决:
systemctl status mysql
或 systemctl status mariadb
确认服务是否运行,未启动则用 systemctl start mysql
启动。/etc/my.cnf
或 /etc/mysql/my.cnf
,确保 bind-address
正确(允许远程连接可设为 0.0.0.0
),端口(默认3306)无误。firewall-cmd --list-all
查看防火墙规则,确保数据库端口(如3306)开放,未开放则添加规则:firewall-cmd --add-port=3306/tcp --permanent && firewall-cmd --reload
。ping
测试数据库服务器可达性,用 telnet IP 端口
或 nc -zv IP 端口
检查端口是否开放。GRANT ALL PRIVILEGES ON *.* TO '用户名'@'%' IDENTIFIED BY '密码'; FLUSH PRIVILEGES;
。pg_hba.conf
(若为PostgreSQL),添加允许远程连接的规则,如 host all all 0.0.0.0/0 md5
。/var/log/mysql/error.log
或PostgreSQL日志 /var/log/postgresql/postgres.log
,根据错误信息进一步排查。setenforce 0
)测试是否因安全策略导致连接失败。nginx -t
检查Nginx配置,确保 fastcgi_pass
指向正确的PHP-FPM地址。参考来源: