本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
将 Lightsail WordPress 实例连接到 Amazon Aurora 数据库
有关博文、页面和用户的网站数据存储在一个在 Amazon Lightsail 中的 WordPress 实例上运行的数据库中。如果实例出现故障,您的数据可能会变得无法恢复。要避免这种情况,您应将网站数据转移到 Amazon Relational Database Service(Amazon RDS)中的 Amazon Aurora 数据库中。
Amazon Aurora 是一种专为云构建的 MySQL 和 PostgreSQL 兼容关系数据库。它既具有传统企业数据库的性能和可用性,又具有开源数据库的简单性和成本效益。Aurora 作为 Amazon RDS 的一部分提供。Amazon RDS 是一项托管式数据库服务,让用户能够在云中更轻松地设置、操作和扩展关系数据库。有关更多信息,请参阅 Amazon Relational Database Service 用户指南和适用于 Aurora 的 Amazon Aurora 用户指南。
在本教程中,我们将演示如何将您的网站数据库从 Lightsail 中的 WordPress 实例连接到 Amazon RDS 中的 Aurora 托管式数据库。
内容
步骤 1:完成先决条件
在开始之前,您需要首先满足以下先决条件:
-
在 Lightsail 中创建一个 WordPress 实例,然后在该实例上配置应用程序。该实例的状态应处于正在运行后才能继续操作。有关更多信息,请参阅教程:在 Amazon Lightsail 中启动并配置 WordPress 实例。
-
在您的 Lightsail 账户中开启 VPC 对等连接。有关更多信息,请参阅设置对等连接以在 Lightsail 外部使用 AWS 资源。
-
在 Amazon RDS 中创建 Aurora 托管式数据库。该数据库应位于与您的 WordPress 实例相同的 AWS 区域 中。其状态应处于正在运行后才能继续操作。有关更多信息,请参阅《Amazon Aurora 用户指南》中的 Amazon Aurora 入门。
步骤 2:为您的 Aurora 数据库配置安全组
AWS 安全组充当 AWS 资源的虚拟防火墙。它会控制可以连接到 Amazon RDS 中的 Aurora 数据库的传入和传出流量。有关安全组的更多信息,请参阅《Amazon Virtual Private Cloud 用户指南》中的使用安全组控制指向资源的流量。
按照以下过程完成安全组配置,以便您的 WordPress 实例可以建立到您的 Aurora 数据库的连接。
-
登录 Amazon RDS 控制台
。 -
在导航窗格中选择 Databases (数据库)。
-
选择您的 WordPress 实例将连接到的 Aurora 数据库的写入器实例。
-
选择连接和安全性选项卡。
-
在 Endpoint & port(终端节点和端口),记下 Writer instance(写入器实例)的 Endpoint name(终端节点名称)和 Port(端口)。在稍后配置 Lightsail 实例以连接到该数据库时,您将需要这些信息。
-
在 Security(安全性)部分,选择活动 VPC 安全组的链接。您将会重新导向到数据库的安全组。
-
确保已经选中您的 Aurora 数据库的安全组。
-
选择入站规则选项卡。
-
选择 Edit inbound rules(编辑入站规则)。
-
在 Edit inbound rules(编辑入站规则)页面中,选择 Add rule(添加规则)。
-
完成下列步骤之一:
-
如果您使用的是原定设置 MySQL 端口 3306,请在 Type(类型)下拉菜单中选择 MySQL/Aurora。
-
如果您使用的数据库的自定义端口,则在 Type(类型)下拉菜单中选择 Custom TCP(自定义 TCP),然后在 Port Range(端口范围)文本框中输入端口号。
-
-
在 Source(源)文本框中,添加 WordPress 实例的私有 IP 地址。您必须以 CIDR 表示法输入 IP 地址,这意味着必须在地址后附加
/32。例如,要允许192.0.2.0,请输入192.0.2.0/32。 -
选择保存规则。
步骤 3:从 Lightsail 实例连接到 Aurora 数据库
完成以下过程以确认您可以从您的 Lightsail 实例连接到您的 Aurora 数据库。
-
登录 Lightsail 控制台
。 -
在左侧导航窗格中,选择 Instances (实例)。
-
选择 WordPress 实例的基于浏览器的 SSH 客户端图标,以使用 SSH 连接到数据库。
-
连接到实例后,请输入以下命令以连接到您的 Aurora 数据库。请将此命令中的
DatabaseEndpoint替换为您的 Aurora 数据库的端点地址,然后将Port替换为您的数据库的端口。将MyUserName替换为您在创建数据库时输入的用户的名称。mysql -hDatabaseEndpoint-PPort-uMyUserName-p您应该会看到与以下示例类似的响应,其中确认您的实例可以访问并连接到您的 Aurora 数据库。
如果您没有看到此响应,或者收到错误消息,则可能需要配置 Aurora 数据库的安全组,以允许 Lightsail 实例的私有 IP 地址连接到该数据库。有关更多信息,请参阅此指南中的为您的 Aurora 数据库配置安全组部分。
步骤 4:将数据库从 WordPress 实例转移到 Aurora 数据库
前面您确认了可以从实例连接到数据库,下面您需要将 WordPress 网站数据转移到 Aurora 数据库。
-
登录 Lightsail 控制台
。 -
在 Instances(实例)选项卡中,选择 WordPress 实例的基于浏览器的 SSH 客户端图标。
-
基于浏览器的 SSH 客户端连接到 WordPress 实例后,请输入以下命令:该命令会将数据从实例上的
bitnami_wordpress数据库传输并转移到您的 Aurora 数据库中。请将此命令中的DatabaseUserName替换为您在创建 Aurora 数据库时输入的主用户的名称。将DatabaseEndpoint替换为 Aurora 数据库的端点地址。sudo mysqldump -u root --databases bitnami_wordpress --single-transaction --compress --order-by-primary -p$(cat /home/bitnami/bitnami_application_password) | sudo mysql -uDatabaseUserName--hostDatabaseEndpoint--password示例:
sudo mysqldump -u root --databases bitnami_wordpress --single-transaction --compress --order-by-primary -p$(cat /home/bitnami/bitnami_application_password) | sudo mysql -uDBuser--hostabc123exampleE67890---czowadgeezqi---us-west-2---rds.amazonaws.com.rproxy.govskope.ca--password -
在出现
Enter password提示时,输入 Aurora 数据库的密码,然后按 Enter。键入密码时,您将无法看到密码。
数据传输成功后,系统将会显示与以下示例类似的响应。
如果您遇到错误,请确认您使用的数据库用户名、密码和终端节点是否正确,然后重试。
步骤 5:配置 WordPress 以连接到 Aurora 数据库
将应用程序数据转移到 Aurora 数据库后,您需要配置 WordPress 以连接到该数据库。按照以下过程编辑 WordPress 配置文件 (wp-config.php),以便网站连接到您的 Aurora 数据库。
-
在连接到 WordPress 实例的基于浏览器的 SSH 客户端中,输入以下命令来创建
wp-config.php文件的备份:cp /opt/bitnami/wordpress/wp-config.php /opt/bitnami/wordpress/wp-config.php-backup -
输入以下命令以将
wp-config.php文件设置为可写:sudo chmod 664 /opt/bitnami/wordpress/wp-config.php -
请将
config文件中的数据库用户名编辑为您在创建 Aurora 数据库时输入的主用户的名称。sudo wp config set DB_USERDatabaseUserName -
使用 Aurora 数据库的端点地址和端口号编辑
config文件中的数据库主机。例如abc123exampleE67890.czowadgeezqi.us-west-2.rds.amazonaws.com:3306。sudo wp config set DB_HOSTDatabaseEndpoint:Port -
使用 Aurora 数据库的密码编辑
config文件中的数据库密码。sudo wp config set DB_PASSWORDDatabasePassword -
输入
wp config list命令验证您在wp-config.php文件中输入的信息是否正确。sudo wp config list结果将与以下示例类似,其中显示您的配置详细信息:
-
输入以下命令以重新启动实例上的 Web 服务。
sudo /opt/bitnami/ctlscript.sh restart在服务重新启动时,系统将会显示与以下示例类似的结果:
恭喜您!您的 WordPress 网站现已配置为使用您的 Aurora 数据库。
注意
如果您需要还原原始
wp-config.php文件,请输入以下命令,以使用您在本教程的之前部分创建的备份将其还原。cp /opt/bitnami/wordpress/wp-config.php-backup /opt/bitnami/wordpress/wp-config.php