在 Laravel 中连接 Debian 上的数据库(通常是 MySQL / MariaDB / PostgreSQL),核心就是:
1. Debian 上先装好数据库并允许连接
2. 配置 Laravel 的.env文件
3. 测试连接
下面以 Debian + MySQL / MariaDB 为例(最常见),其他数据库类似。
sudo apt update
sudo apt install mariadb-server
sudo systemctl start mariadb
sudo systemctl enable mariadb
CREATE DATABASE laravel_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'laravel_user'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON laravel_db.* TO 'laravel_user'@'%';
FLUSH PRIVILEGES;
⚠️ 如果 Laravel 和数据库在同一台 Debian 上,
@'localhost'也可以
⚠️ 如果不在同一台,@'%'并开放端口
sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf
找到:
bind-address = 127.0.0.1
改为:
bind-address = 0.0.0.0
sudo systemctl restart mariadb
sudo ufw allow 3306
.envDB_CONNECTION=mysql
DB_HOST=127.0.0.1 # 远程写 Debian 的 IP
DB_PORT=3306
DB_DATABASE=laravel_db
DB_USERNAME=laravel_user
DB_PASSWORD=password
php artisan config:clear
php artisan tinker
DB::connection()->getPdo();
无报错说明连接成功 ✅
或运行迁移测试:
php artisan migrate
bind-address 没改| 数据库 | DB_CONNECTION |
|---|---|
| PostgreSQL | pgsql |
| SQLite | sqlite |
| SQL Server | sqlsrv |
如果你愿意,可以告诉我:
我可以直接给你一份 精确配置示例。