我拥有一个 wordpress 网站 (website.com),该网站与托管服务 (cpanel) 配合良好。因此,我想创建一个新的子域 (new.website.com) 并在其中安装 wordpress,但对于数据库,我想使用 Google Cloud Platform 的 Compute Engine。
我已经在 CE 上安装了 mysql 并且运行正常,但不幸的是我无法将它连接到我的托管服务来安装 wordpress。
我怎样才能做到这一点?
我已经尝试过的:
在 CE 上创建 mysql(使用 ssh 运行) 创建数据库、创建用户(连接到 Web IP)和密码 更改 my.cnf(将绑定地址更改为 0.0.0.0) 设置 wp-config 在我的托管服务上的文件管理器上安装,例如:数据库名称、用户、密码和主机 将数据库从 CE 连接到 mysql 客户端(mysql workbench) 确保端口打开:3306 当我尝试 new.website.com 时输出:“建立数据库连接时出错”
可能存在的问题是:
mysql,我无法检索数据库 ip,cs 当我运行“mysql> status”时,它会返回:连接:通过 UNIX 套接字的 Localhost wp-config 设置,我需要更改 db_host 吗?我认为它应该是数据库 ip,但我无法获取 ip。来自印度尼西亚的欢呼声。
答案1
解决您的问题您应该遵循以下步骤:
- 确保您的实例具有静态外部 IP 或将其更改为静态。默认情况下,VM 实例具有临时外部 IP这可能会发生更改并导致与数据库的连接出现问题。要执行此操作,请按照文档操作保留新的静态外部 IP 地址和更改或分配外部 IP 地址给现有实例。
- 按照文档创建防火墙规则时,添加网络标签
mysql-server
(或任何其他标签)以便在下一步中使用它为现有虚拟机添加标签 - 按照文档创建新的防火墙规则,以允许从您的主机到 GCE VM 实例的流量创建防火墙规则。使用您的网络标签作为
Target tags
,现有托管的 IP 作为,Source IP ranges
并仅打开 TCP 端口 3306,以使您的设置更安全。 - 使用在步骤 1 中保留的 VM 实例的静态外部 IP,而
'DB_HOST'
不是'localhost'
因为 MySQL 数据库位于不同的服务器上。
如果你需要使用命令行从主机连接到 MySQL 数据库,请按照文档操作4.2.4 使用命令选项连接 MySQL 服务器并使用步骤 1 中保留的静态外部 IP。您可以找到一些示例这里。