You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将本地PHP项目连接到GCP LAMP虚拟机上的远程MySQL数据库

仅靠修改config.php不足以完成连接,你需要先完成GCP侧的网络、MySQL权限配置,再调整config.php的参数才能成功连接,具体操作如下:

1 GCP侧配置

1.1 防火墙端口放行

  • 进入GCP控制台的VPC防火墙规则页面,添加入站规则,放行MySQL默认的3306端口,源IP填写你家本地电脑的公网IP,不要直接放开所有IP(0.0.0.0/0),避免数据库暴露在公网风险中。
  • 确认你的GCP LAMP虚拟机已经绑定了公网IP,后续配置需要用到这个IP地址。

1.2 MySQL远程访问配置

  • 登录GCP上的LAMP虚拟机,编辑MySQL配置文件(默认路径为/etc/mysql/mysql.conf.d/mysqld.cnf),找到bind-address参数,将原值127.0.0.1修改为0.0.0.0,或者直接注释该配置项,修改完成后执行systemctl restart mysql重启MySQL服务生效。
  • 登录MySQL命令行,给你的数据库用户开通远程访问权限,执行以下SQL语句:
GRANT ALL PRIVILEGES ON business_covid.* TO 'testuser'@'你家本地公网IP' IDENTIFIED BY 'testuser对应的数据库密码';
FLUSH PRIVILEGES;

若测试阶段不确定本地公网IP,可临时将权限中的IP换成%(代表允许所有IP访问),但测试完成后必须改回固定IP,降低安全风险。

2 本地config.php修改

你之前修改不生效的核心原因之一是原有连接字符串没有引入DBHOST参数,修改后的完整配置如下:

<?php
define('DBHOST', '你的GCP虚拟机公网IP');
define('DBNAME', 'business_covid');
define('DBUSER', 'testuser');
define('DBPASS', 'hidden'); // 替换为testuser对应的实际数据库密码
define('DBCONNSTRING','mysql:host='.DBHOST.';dbname=business_covid;charset=utf8mb4');
?>
3 异常排查

如果配置完成后仍连接失败,按顺序排查:

  • 确认本地网络可以ping通GCP虚拟机的公网IP
  • 本地执行telnet 你的GCP虚拟机公网IP 3306,确认3306端口可以正常访问
  • 确认本地PHP环境已开启pdo_mysql扩展
  • 确认testuser用户的密码、权限配置正确

完成以上配置后,无需额外文件,通过该config.php即可正常连接GCP上的MySQL数据库。

内容的提问来源于stack exchange,提问作者Aloysius Blue Whale

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 19:15:04