在 Linux 服务器上使用 Laravel 连接数据库,一般分为 配置数据库、确保服务可用、测试连接 三个步骤。下面以 MySQL 为例(其他数据库类似)。
sudo apt update
sudo apt install mysql-server
sudo systemctl start mysql
sudo systemctl enable mysql
查看状态:
sudo systemctl status mysql
sudo mysql -u root -p
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 文件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- 确保 MySQL 允许远程连接
config/database.php(可选)一般不用改,Laravel 默认读取 .env:
'default' => env('DB_CONNECTION', 'mysql'),
php artisan migrate
php artisan tinker
DB::connection()->getPdo();
无报错即连接成功。
sudo chown -R www-data:www-data storage bootstrap/cache
sudo ufw allow 3306
SELECT host FROM mysql.user WHERE user='laravel_user';
sudo apt install php-mysql
sudo systemctl restart apache2
DB_CONNECTION=pgsql
DB_HOST=127.0.0.1
DB_PORT=5432
DB_DATABASE=laravel_db
DB_USERNAME=postgres
DB_PASSWORD=password
如果你用的是 宝塔 / Docker / 远程数据库 / SQLite,可以告诉我具体环境,我可以给你更精确的配置方式。