在 CentOS 上让 Laravel 连接数据库,通常包含以下几个步骤(以 MySQL/MariaDB 为例,最常见):
sudo yum install mariadb-server mariadb -y
sudo systemctl start mariadb
sudo systemctl enable mariadb
sudo mysql_secure_installation
mysql -u root -p
进入 MySQL 后执行:
CREATE DATABASE laravel_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'laravel_user'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON laravel_db.* TO 'laravel_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
.env 文件cd /path/to/laravel
vi .env
修改或添加以下内容:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel_db
DB_USERNAME=laravel_user
DB_PASSWORD=password
✅ 如果数据库在另一台服务器,把
DB_HOST改成数据库服务器 IP
php artisan config:clear
php artisan cache:clear
php artisan migrate
如果能正常执行,说明连接成功 ✅
sudo firewall-cmd --add-port=3306/tcp --permanent
sudo firewall-cmd --reload
sudo setsebool -P httpd_can_network_connect_db on
sudo yum install php-mysqlnd
sudo systemctl restart php-fpm # 或 httpd
.env 中 DB_HOST=远程IPCREATE USER 'laravel_user'@'%' IDENTIFIED BY 'password';
如果你用的是 PostgreSQL / SQLite / Docker / 宝塔面板,可以告诉我,我可以给你对应的具体配置方式。