在 Debian 上配置 PhpStorm 数据库连接
一 准备数据库环境
- 安装数据库(以 MySQL/MariaDB 为例):执行 sudo apt update && sudo apt install mysql-server,安装过程中会提示为 root 设置密码。完成后执行 sudo mysql_secure_installation 完成安全初始化(设置密码强度、删除匿名用户、禁止 root 远程登录等)。随后用 mysql -u root -p 验证登录。以上确保本机数据库已安装、运行且可登录。
二 在 PhpStorm 中新建数据源
- 打开设置:依次点击 File > Settings > Languages & Frameworks > PHP > Database(macOS 为 Preferences)。在右侧点击 +,选择 Data Source,再选择 MySQL(或 MariaDB/PostgreSQL 等)。填写连接参数:Host(本地常用 localhost/127.0.0.1,远程填服务器 IP/域名)、Port(MySQL 默认 3306)、User、Password、Database(需事先存在,可用 CREATE DATABASE 数据库名; 创建)。若提示缺少驱动,点击 Download 自动下载。完成后点击 Test Connection,显示成功后点击 OK 保存。
三 远程连接与 SSH 隧道
- 直连远程数据库(开放访问):在服务器上放行端口(如 sudo ufw allow 3306),编辑 /etc/mysql/mysql.conf.d/mysqld.cnf,将 bind-address = 127.0.0.1 改为 bind-address = 0.0.0.0,重启服务 sudo systemctl restart mysql。在 PhpStorm 中将 Host 设为远程 IP,并确保数据库用户具备对应权限(如 GRANT ALL PRIVILEGES ON 数据库名. TO ‘用户名’@‘%’ IDENTIFIED BY ‘密码’;*)。
- 通过 SSH 隧道(更安全):在 PhpStorm 的数据库配置中勾选 SSH/SSL,填写 SSH Host/Port/User,选择认证方式(密码或私钥),保存后用 SSH 隧道转发数据库请求,无需开放数据库端口到公网。
四 常见问题排查
- 连接被拒绝或超时:核对 Host/Port/防火墙 设置;远程直连需确保 bind-address 与云安全组/本机防火墙已放行;优先使用 SSH 隧道 规避暴露数据库端口。
- 用户权限不足:确认连接用户拥有目标库权限,必要时在数据库中执行授权(如 GRANT … TO ‘用户名’@‘%’)。
- 驱动缺失:在数据源界面点击 Download 安装对应 JDBC/驱动。
- 认证/SSL 问题:若服务器启用 SSL/TLS,在数据源的 SSH/SSL 选项卡中按服务端要求配置 SSL mode、证书等参数。