zhcn 技术 如何将 Google Cloud SQL 与 WordPress 结合使用?

如何将 Google Cloud SQL 与 WordPress 结合使用?

管理高流量的 WordPress 网站会面临许多挑战,其中之一就是数据库

众所周知,数据库是资源密集型的,例如CPU、内存和IO,因此我们建议单独托管它们

典型的 WordPress 网站如下所示:

如果 Nginx/Apache、PHP、WordPress、MySQL/MariaDB 等所有软件都运行在同一台服务器上。

对于中小型流量来说,将所有内容都放在同一服务器上是没问题的,但如果您正在管理高流量网站并优化每一层以获得最佳性能,我们建议您将数据库服务器分开。

有两种方法可以做到这一点。

  • 将数据库托管在另一台服务器上
  • 使用 Google Cloud 托管 SQL

第一个选项是合适的。如果您准备好花时间和精力来管理数据库,那就很好。但是,如果您还没有准备好,您可以利用Google Cloud Managed SQL

什么是谷歌云SQL?

Cloud SQL 是 Google 提供的高性能托管数据库(MySQL、PostgreSQL、SQL Server)服务。您不必担心安装、管理或性能优化。

只需按使用量付费,让 Google 为您处理数据库基础设施。

Google Cloud SQL 可以与 App Engine、Compute Engine 或其他托管/服务(包括本地工作站)集成。设置数据库复制、高可用性和自动故障转移不需要数据库技能,并且可以使用 GCP Console 进行配置。

准备好了解 Cloud SQL 如何与 WordPress 配合使用了吗?

场景– 我有一个托管在 Google Cloud(计算引擎)上的 WordPress 网站,所有内容都在单个服务器上运行。隔离数据库:

  • 创建 Cloud SQL 实例
  • 从现有 MySQL 数据库导出数据
  • 将数据导入 Cloud SQL
  • 使您的现有 WordPress 服务器能够连接到 Cloud SQL
  • 修改您的 WordPress 配置以连接到 Cloud SQL

创建 Google Cloud SQL 实例

gcp-云-sql-实例
gcp-云-sql-实例
gcp-云-sql-实例

  • 选择“MySQL”和“下一步”

选择-gcp-sql
选择-gcp-sql
选择-gcp-sql

  • 输入实例信息

  • 请输入实例ID
  • 选择数据库版本(最好始终是最新的)
  • 选择您的区域和区域(我们将使用单个区域,您以后可以随时使用 HA)
  • 单击显示配置选项可自定义 VM 实例类型、备份、维护等。

提示:我们始终建议将您的 SQL 实例放置在与现有 WordPress 服务器相同的区域中。不过,如果 WordPress 不在 Google Cloud 上,请选择距离您的服务器最近的位置。

  • SSD设置为默认选择的存储类型。
  • 默认选择自动备份、二进制日志-根据需要更改
  • 我们建议定义维护窗口和修补时间

提示:始终选择业务不太繁忙的日期和时间

  • 完成所有设置后,单击“创建实例”。

创建将需要几秒钟,完成后,您将在列表中看到您的实例。

从现有数据库导出数据

  • 登录当前运行MySQL的服务器。
  • 使用mysqldump命令导出数据库
mysqldump -u root -p [DATABASE_NAME] >/tmp/export.sql

Google Docs中所述,导出还有几个步骤。

导出完成后,您需要将 SQL 文件上传到Google Cloud Storage (S3) 空间中的某个位置。

将数据导入 Cloud SQL

创建一个数据库并将名称保留为现有名称。

  • 转到SQL 实例
  • 单击左侧导航面板中的数据库>> 创建数据库
  • 输入数据库名称并点击创建

gcp-创建-sql-db
gcp-创建-sql-db
gcp-创建-sql-db

接下来,导入您的数据。

  • 转到实例概述并单击导入按钮。
  • 导出时选择上一步上传的存储桶中的SQL文件
  • 选择目标下的数据库

gcp-导入数据库
gcp-导入数据库
gcp-导入数据库

  • 点击“导入”

这将需要几秒钟。完成后将显示一条确认消息。

配置 Cloud SQL 访问

访问控制很重要,因为您可以在其中定义谁连接到您的实例。有两个部分。

网络授权– 添加允许连接到您的 Cloud SQL 实例的 IP 地址

  • 转到“连接”>>“添加网络”(如果 WordPress 由 GCP 托管,则在“公共 IP”下;如果托管在 Google Cloud 虚拟机上,则在“私有 IP”下)并输入 IP 地址。

gcp-sql-允许-ip
gcp-sql-允许-ip
gcp-sql-允许-ip

用户帐户– 您可能想为 WordPress 数据库创建一个单独的用户帐户。

  • 转到“用户”>>添加用户帐户
  • 输入您想要允许访问的用户、密码和主机名。

提示:为了最大限度地减少对 WordPress 的配置更改,您可以保留用户和密码不变。

将 WordPress 配置为 Cloud SQL

最后一部分需要更改wp-config.php以指向 Cloud SQL。

与往常一样,备份您的 wp-config.php文件。

使用vi编辑文件并将DB_HOST值更新为您的 Cloud SQL IP 地址。

 /** MySQL hostname */
define('DB_HOST', 'localhost'); 

 /** MySQL hostname */
define('DB_HOST', '104.155.153.82'); 

104.155.153.82 是 Cloud SQL 实例的 IP,显示在概览页面上。

保存文件并在 WordPress 服务器上重新启动 PHP 和 Nginx。

注意:您还可以使用此处描述的Compute Engine 中的 MySQL 客户端连接到您的 Cloud SQL 实例。

干得好!您已成功隔离 WordPress 数据库。

请访问并看看它是如何工作的。如果您对这个问题感到满意,我们建议您停止 WordPress 服务器上的 MySQL

停止 MySQL

一旦您对 Google CloudSQL 感到满意,您就可以考虑停止在服务器上运行 MySQL。

如果您使用的是Ubuntu 16.x

 service mysql stop 

这将停止它,但当服务器重新启动时它会再次启动,因此您接下来需要禁用自动启动。

  update-rc.d mysql disable 

对于CentOS 6.x

 service mysqld stop 

禁用自动启动

 chkconfig --del mysqld 

虽然您可以卸载 MySQL,但我们建议保留它的安装状态,以防您在本地使用它。

在 Google Cloud 上管理 MySQL 非常容易,我没有遇到任何问题。

如果您需要将数据库与 WordPress 服务器分区,Google Cloud SQL 是一个不错的选择。尝试一下,看看它是如何工作的。

不熟悉配置更改和服务器管理?利用 WordPress 托管 Google Cloud 平台。

对“如何将 Google Cloud SQL 与 WordPress 结合使用?”的简单易懂的解释您必须观看的 2 个最佳视频

5 分でわかる! Google Cloud ! Google Cloud (GCP)無料枠を使ってWordpressでWebサイトを立ち上げてみた
https://www.youtube.com/watch?v=2bbT9FJ-_2E&pp=ygVaIFdvcmRQcmVzcyDjgacgR29vZ2xlIENsb3VkIFNRTCDjgpLkvb_nlKjjgZnjgovjgavjga_jganjgYbjgZnjgozjgbDjgojjgYTjgafjgZnjgYs_J mh sPUb
Cloud SQL への第一歩 〜はじめてみよう 編〜
https://www.youtube.com/watch?v=Pxrhc47TotQ&pp=ygVaIFdvcmRQcmVzcyDjgacgR29vZ2xlIENsb3VkIFNRTCDjgpLkvb_nlKjjgZnjgovjgavjga_jganjgYbjgZnjgozjgbDjgojjgYTjgafjgZnjgYs_J mh sPUb

管理高流量的 WordPress 网站会面临许多挑战,其中之一就是数据库

众所周知,数据库是资源密集型的,例如CPU、内存和IO,因此我们建议单独托管它们

典型的 WordPress 网站如下所示:

如果 Nginx/Apache、PHP、WordPress、MySQL/MariaDB 等所有软件都运行在同一台服务器上。

对于中小型流量来说,将所有内容都放在同一服务器上是没问题的,但如果您正在管理高流量网站并优化每一层以获得最佳性能,我们建议您将数据库服务器分开。

有两种方法可以做到这一点。

  • 将数据库托管在另一台服务器上
  • 使用 Google Cloud 托管 SQL

第一个选项是合适的。如果您准备好花时间和精力来管理数据库,那就很好。但是,如果您还没有准备好,您可以利用Google Cloud Managed SQL

什么是谷歌云SQL?

Cloud SQL 是 Google 提供的高性能托管数据库(MySQL、PostgreSQL、SQL Server)服务。您不必担心安装、管理或性能优化。

只需按使用量付费,让 Google 为您处理数据库基础设施。

Google Cloud SQL 可以与 App Engine、Compute Engine 或其他托管/服务(包括本地工作站)集成。设置数据库复制、高可用性和自动故障转移不需要数据库技能,并且可以使用 GCP Console 进行配置。

准备好了解 Cloud SQL 如何与 WordPress 配合使用了吗?

场景– 我有一个托管在 Google Cloud(计算引擎)上的 WordPress 网站,所有内容都在单个服务器上运行。隔离数据库:

  • 创建 Cloud SQL 实例
  • 从现有 MySQL 数据库导出数据
  • 将数据导入 Cloud SQL
  • 使您的现有 WordPress 服务器能够连接到 Cloud SQL
  • 修改您的 WordPress 配置以连接到 Cloud SQL

创建 Google Cloud SQL 实例

gcp-云-sql-实例
gcp-云-sql-实例
gcp-云-sql-实例

  • 选择“MySQL”和“下一步”

选择-gcp-sql
选择-gcp-sql
选择-gcp-sql

  • 输入实例信息

  • 请输入实例ID
  • 选择数据库版本(最好始终是最新的)
  • 选择您的区域和区域(我们将使用单个区域,您以后可以随时使用 HA)
  • 单击显示配置选项可自定义 VM 实例类型、备份、维护等。

提示:我们始终建议将您的 SQL 实例放置在与现有 WordPress 服务器相同的区域中。不过,如果 WordPress 不在 Google Cloud 上,请选择距离您的服务器最近的位置。

  • SSD设置为默认选择的存储类型。
  • 默认选择自动备份、二进制日志-根据需要更改
  • 我们建议定义维护窗口和修补时间

提示:始终选择业务不太繁忙的日期和时间

  • 完成所有设置后,单击“创建实例”。

创建将需要几秒钟,完成后,您将在列表中看到您的实例。

从现有数据库导出数据

  • 登录当前运行MySQL的服务器。
  • 使用mysqldump命令导出数据库
mysqldump -u root -p [DATABASE_NAME] >/tmp/export.sql

Google Docs中所述,导出还有几个步骤。

导出完成后,您需要将 SQL 文件上传到Google Cloud Storage (S3) 空间中的某个位置。

将数据导入 Cloud SQL

创建一个数据库并将名称保留为现有名称。

  • 转到SQL 实例
  • 单击左侧导航面板中的数据库>> 创建数据库
  • 输入数据库名称并点击创建

gcp-创建-sql-db
gcp-创建-sql-db
gcp-创建-sql-db

接下来,导入您的数据。

  • 转到实例概述并单击导入按钮。
  • 导出时选择上一步上传的存储桶中的SQL文件
  • 选择目标下的数据库

gcp-导入数据库
gcp-导入数据库
gcp-导入数据库

  • 点击“导入”

这将需要几秒钟。完成后将显示一条确认消息。

配置 Cloud SQL 访问

访问控制很重要,因为您可以在其中定义谁连接到您的实例。有两个部分。

网络授权– 添加允许连接到您的 Cloud SQL 实例的 IP 地址

  • 转到“连接”>>“添加网络”(如果 WordPress 由 GCP 托管,则在“公共 IP”下;如果托管在 Google Cloud 虚拟机上,则在“私有 IP”下)并输入 IP 地址。

gcp-sql-允许-ip
gcp-sql-允许-ip
gcp-sql-允许-ip

用户帐户– 您可能想为 WordPress 数据库创建一个单独的用户帐户。

  • 转到“用户”>>添加用户帐户
  • 输入您想要允许访问的用户、密码和主机名。

提示:为了最大限度地减少对 WordPress 的配置更改,您可以保留用户和密码不变。

将 WordPress 配置为 Cloud SQL

最后一部分需要更改wp-config.php以指向 Cloud SQL。

与往常一样,备份您的 wp-config.php文件。

使用vi编辑文件并将DB_HOST值更新为您的 Cloud SQL IP 地址。

 /** MySQL hostname */
define('DB_HOST', 'localhost'); 

 /** MySQL hostname */
define('DB_HOST', '104.155.153.82'); 

104.155.153.82 是 Cloud SQL 实例的 IP,显示在概览页面上。

保存文件并在 WordPress 服务器上重新启动 PHP 和 Nginx。

注意:您还可以使用此处描述的Compute Engine 中的 MySQL 客户端连接到您的 Cloud SQL 实例。

干得好!您已成功隔离 WordPress 数据库。

请访问并看看它是如何工作的。如果您对这个问题感到满意,我们建议您停止 WordPress 服务器上的 MySQL

停止 MySQL

一旦您对 Google CloudSQL 感到满意,您就可以考虑停止在服务器上运行 MySQL。

如果您使用的是Ubuntu 16.x

 service mysql stop 

这将停止它,但当服务器重新启动时它会再次启动,因此您接下来需要禁用自动启动。

  update-rc.d mysql disable 

对于CentOS 6.x

 service mysqld stop 

禁用自动启动

 chkconfig --del mysqld 

虽然您可以卸载 MySQL,但我们建议保留它的安装状态,以防您在本地使用它。

在 Google Cloud 上管理 MySQL 非常容易,我没有遇到任何问题。

如果您需要将数据库与 WordPress 服务器分区,Google Cloud SQL 是一个不错的选择。尝试一下,看看它是如何工作的。

不熟悉配置更改和服务器管理?利用 WordPress 托管 Google Cloud 平台。

对“如何将 Google Cloud SQL 与 WordPress 结合使用?”的简单易懂的解释您必须观看的 2 个最佳视频

5 分でわかる! Google Cloud ! Google Cloud (GCP)無料枠を使ってWordpressでWebサイトを立ち上げてみた
https://www.youtube.com/watch?v=2bbT9FJ-_2E&pp=ygVaIFdvcmRQcmVzcyDjgacgR29vZ2xlIENsb3VkIFNRTCDjgpLkvb_nlKjjgZnjgovjgavjga_jganjgYbjgZnjgozjgbDjgojjgYTjgafjgZnjgYs_J mh sPUb
Cloud SQL への第一歩 〜はじめてみよう 編〜
https://www.youtube.com/watch?v=Pxrhc47TotQ&pp=ygVaIFdvcmRQcmVzcyDjgacgR29vZ2xlIENsb3VkIFNRTCDjgpLkvb_nlKjjgZnjgovjgavjga_jganjgYbjgZnjgozjgbDjgojjgYTjgafjgZnjgYs_J mh sPUb