在 CentOS 下,Laravel 数据库连接失败可能有以下几个原因:
sudo systemctl status mysqld
如果服务未启动,请使用以下命令启动它:
sudo systemctl start mysqld
.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
防火墙设置:如果你的数据库服务器和 Laravel 应用程序部署在不同的服务器上,请确保防火墙允许数据库端口(通常是 3306)的通信。
SELinux 设置:如果你的 CentOS 系统启用了 SELinux,可能需要允许 HTTP 服务器访问数据库端口。可以使用以下命令临时禁用 SELinux:
sudo setenforce 0
要永久禁用 SELinux,请编辑 /etc/selinux/config
文件,将 SELINUX=enforcing
更改为 SELINUX=disabled
。
GRANT ALL PRIVILEGES ON your_database_name.* TO 'your_database_user'@'localhost';
FLUSH PRIVILEGES;
config/app.php
文件中注册了正确的数据库服务提供商。例如,对于 MySQL 数据库,应添加以下行:'providers' => [
// ...
Illuminate\Database\DatabaseServiceProvider::class,
],
检查以上原因,并根据具体情况进行相应的调整。希望这些信息能帮助你解决 Laravel 数据库连接失败的问题。
亿速云「云数据库 MySQL」免部署即开即用,比自行安装部署数据库高出1倍以上的性能,双节点冗余防止单节点故障,数据自动定期备份随时恢复。点击查看>>