CentOS 上的 Laravel 数据库连接失败可能有以下几个原因:
.env
文件中的数据库配置信息是否正确。例如:DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=your_database_name
DB_USERNAME=your_database_user
DB_PASSWORD=your_database_password
确保这些值与您的实际数据库设置相匹配。
# 对于 MySQL
sudo systemctl status mysqld
sudo systemctl start mysqld
# 对于 MariaDB
sudo systemctl status mariadb
sudo systemctl start mariadb
防火墙设置:如果您的数据库服务器和 Laravel 应用程序部署在不同的服务器上,请确保防火墙允许数据库端口(通常是 3306)的通信。
数据库用户权限:请确保数据库用户具有足够的权限访问指定的数据库。您可以使用以下命令来检查和修改用户权限:
# 登录到 MySQL
mysql -u root -p
# 检查用户权限
SHOW GRANTS FOR 'your_database_user'@'your_database_host';
# 如果需要,授予权限
GRANT ALL PRIVILEGES ON your_database_name.* TO 'your_database_user'@'your_database_host';
FLUSH PRIVILEGES;
sudo setenforce 0
如果确定是 SELinux 导致的问题,可以参考 CentOS 官方文档 调整 SELinux 策略。
请逐一排查这些原因,找到并解决导致 Laravel 数据库连接失败的问题。
辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读: CentOS LAMP如何实现负载均衡