网站数据库连接失败(SQLSTATE 相关错误)错误怎么办|已解决

数据库配置错误、数据库服务未启动、数据库用户无权限、数据库连接超时、长连接失效。

解决方案

  1. 核对数据库配置:打开 config/database.php,确认 hostname(通常为 127.0.0.1)、database(数据库名)、usernamepasswordport(默认 3306)正确,避免端口写成字符串、密码少输字符等错误。
  2. 检查数据库服务:执行 systemctl status mysqld(MySQL)或systemctl status mariadb,确认数据库服务正常运行,若未启动,执行 systemctl start mysqld
  3. 解决连接超时/长连接问题:若提示“MySQL server has gone away”,调整数据库 wait_timeout 参数,或在数据库配置中关闭长连接(PDO::ATTR_PERSISTENT => false),启用连接检测与重连机制,避免 FPM 进程长期占用连接导致失效。
  4. 授权数据库用户:确保数据库用户拥有对应数据库的查询、新增、修改权限,执行 GRANT ALL ON 数据库名.* TO '用户名'@'localhost' IDENTIFIED BY '密码'; 授权后刷新权限(FLUSH PRIVILEGES;)。
posted @ 2026-03-14 10:59  可有仙子迎风立  阅读(24)  评论(0)    收藏  举报