

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 在 Lightsail 中将 WordPress 数据传输到 MySQL 托管数据库
<a name="amazon-lightsail-connect-wordpress-to-mysql-managed-database"></a>

帖子、页面和用户的关键 WordPress 网站数据存储在您的 Amazon Lightsail 实例上运行的 MySQL 数据库中。如果实例出现故障，您的数据可能会变得无法恢复。要避免这种情况，您应将网站数据传输到 MySQL 托管数据库。

在本教程中，我们将向您展示如何在 Lightsail 中将您的 WordPress 网站数据传输到 MySQL 托管数据库。我们还将向您展示如何编辑实例上的 WordPress 配置 (`wp-config.php`) 文件，以便您的网站连接到托管数据库，并停止连接到实例上运行的数据库。

**内容**
+ [步骤 1：完成先决条件](#connect-wordpress-to-mysql-managed-database-prerequisites)
+ [步骤 2：将 WordPress 数据库传输到您的 MySQL 托管数据库](#transfer-wordpress-database-to-mysql-managed-database)
+ [步骤 3：进行配置 WordPress 以连接您的 MySQL 托管数据库](#configure-wordpress-to-connect-to-mysql-managed-database)
+ [步骤 4：完成后续步骤](#connect-wordpress-to-mysql-managed-database-next-steps)

## 步骤 1：完成先决条件
<a name="connect-wordpress-to-mysql-managed-database-prerequisites"></a>

在开始之前，请满足以下先决条件：
+ 在 Lightsail 中创建一个 WordPress 实例，并确保其处于运行状态。有关更多信息，请参阅[教程：在 Amazon Lightsai WordPress l 中启动和配置实例](amazon-lightsail-tutorial-launching-and-configuring-wordpress.md)。
+ 在 Lightsail 中创建一个 MySQL 托管数据库，该数据库与您的 WordPress 实例位于相同的 AWS 区域，并确保其处于运行状态。 WordPress 适用于 Lightsail 中所有可用的 MySQL 数据库选项。有关更多信息，请参阅[在 Amazon Lightsail 中创建数据库](amazon-lightsail-creating-a-database.md)。
+ 为 MySQL 托管数据库启用公有模式和数据导入模式。在完成本教程中的步骤后，可以禁用这些模式。有关更多信息，请参阅[为您的数据库配置公有模式](amazon-lightsail-configuring-database-public-mode.md)和[为您的数据库配置数据导入模式](amazon-lightsail-configuring-database-data-import-mode.md)。

## 步骤 2：将 WordPress 数据库传输到您的 MySQL 托管数据库
<a name="transfer-wordpress-database-to-mysql-managed-database"></a>

完成以下步骤，将您的 WordPress 网站数据传输到 Lightsail 中的 MySQL 托管数据库。

1. 登录 [Lightsail 控制台](https://lightsail.aws.amazon.com/)。

1. 在**实例**选项卡中，为您的实例选择基于浏览器的 SSH 客户端图标。 WordPress   
![\[Lightsail 控制台中基于浏览器的 SSH 客户端图标。\]](http://docs.aws.amazon.com/zh_cn/lightsail/latest/userguide/images/amazon-lightsail-wordpress-quick-connect.png)

1. 在基于浏览器的 SSH 客户端连接到您的 WordPress 实例后，输入以下命令将您的实例上的`bitnami_wordpress`数据库中的数据传输到 MySQL 托管数据库。请务必*DbUserName*替换为托管数据库的用户名，并*DbEndpoint*替换为托管数据库的终端节点地址。

   ```
   sudo mysqldump -u root --databases bitnami_wordpress --single-transaction --compress --order-by-primary  -p$(cat /home/bitnami/bitnami_application_password) | sudo mysql -u DbUserName --host DbEndpoint --password
   ```

   **示例**

   ```
   sudo mysqldump -u root --databases bitnami_wordpress --single-transaction --compress --order-by-primary -p$(cat /home/bitnami/bitnami_application_password) | sudo mysql -u dbmasteruser --host ls-abc123exampleE67890.czowadgeezqi.us-west-2.rds.amazonaws.com --password
   ```

1. 在出现提示时，输入您的 MySQL 托管数据库的密码，然后按 **Enter**。

   在键入密码时，您将无法看到密码。  
![\[在 Lightsail 中将 WordPress 数据库传输到 MySQL 托管数据库的密码提示。\]](http://docs.aws.amazon.com/zh_cn/lightsail/latest/userguide/images/amazon-lightsail-transfer-wordpress-database-to-mysql-managed-database.png)

1. 如果已成功传输数据，则会显示与以下示例类似的结果。

   如果您收到错误，请确认您使用的是正确的数据库用户名、密码或端点，然后重试。  
![\[已成功将 WordPress 数据库传输到 Lightsail 中的 MySQL 托管数据库。\]](http://docs.aws.amazon.com/zh_cn/lightsail/latest/userguide/images/amazon-lightsail-transfer-wordpress-database-to-mysql-managed-database-success.png)

## 步骤 3：进行配置 WordPress 以连接您的 MySQL 托管数据库
<a name="configure-wordpress-to-connect-to-mysql-managed-database"></a>

完成以下步骤编辑 WordPress 配置文件 (`wp-config.php`)，以便您的网站连接到 MySQL 托管数据库。

1. 在连接到您的 WordPress 实例的基于浏览器的 SSH 客户端中，输入以下命令以创建`wp-config.php`文件备份，以防出现问题。

   ```
   cp /opt/bitnami/wordpress/wp-config.php /opt/bitnami/wordpress/wp-config.php-backup
   ```

1. 输入以下命令以使用 Nano 文本编辑器打开 `wp-config.php` 文件。

   ```
   nano /opt/bitnami/wordpress/wp-config.php
   ```

1. 向下滚动直至您找到 `DB_USER`、`DB_PASSWORD` 和 `DB_HOST` 的值，如以下示例所示。  
![\[修改之前的 Wordpress 配置文件。\]](http://docs.aws.amazon.com/zh_cn/lightsail/latest/userguide/images/amazon-lightsail-wordpress-wpconfig-file-original.png)

1. 修改以下值：
   + **DB\$1USER** – 编辑此值以匹配 MySQL 托管数据库的用户名。Lightsail 托管数据库的默认主用户名为。`dbmasteruser`
   + **DB\$1PASSWORD** – 编辑此值以匹配 MySQL 托管数据库的强密码。有关更多信息，请参阅[管理数据库密码](amazon-lightsail-managing-database-password.md)。
   + **DB\$1HOST** – 编辑此值以匹配 MySQL 托管数据库的端点。请务必在主机地址末尾添加 `:3306` 端口号。例如 `ls-abc123exampleE67890.czowadgeezqi.us-west-2.rds.amazonaws.com:3306`。

   结果应该类似以下示例。  
![\[对 WordPress 配置文件的修改。\]](http://docs.aws.amazon.com/zh_cn/lightsail/latest/userguide/images/amazon-lightsail-wordpress-wpconfig-file-modifications.png)

1. 按 **Ctrl\$1X** 以退出 Nano，然后按 **Y** 和 **Enter** 以保存您的编辑。

1. 输入以下命令以重新启动实例的 Web 服务。

   ```
   sudo /opt/bitnami/ctlscript.sh restart
   ```

   在服务已重新启动时，将显示与以下示例类似的结果。  
![\[在 WordPress 实例上重新启动服务器服务。\]](http://docs.aws.amazon.com/zh_cn/lightsail/latest/userguide/images/amazon-lightsail-restart-wordpress-services.png)

   恭喜您！您的 WordPress 站点现已配置为使用 MySQL 托管数据库。
**注意**  
如果出于任何原因您需要还原原始 `wp-config.php` 文件，请输入以下命令，以使用您在本教程的前面创建的备份还原它。  

   ```
   cp /opt/bitnami/wordpress/wp-config.php-backup /opt/bitnami/wordpress/wp-config.php
   ```

## 步骤 4：完成后续步骤
<a name="connect-wordpress-to-mysql-managed-database-next-steps"></a>

将 WordPress网站连接到 MySQL 托管数据库后，应完成以下额外步骤：
+ 创建您的 WordPress 实例的快照。有关更多信息，请参阅[创建 Linux 或 Unix 实例的快照](lightsail-how-to-create-a-snapshot-of-your-instance.md)。
+ 创建 MySQL 托管数据库的快照。有关更多信息，请参阅[创建数据库的快照](amazon-lightsail-creating-a-database-snapshot.md)。
+ 禁用 MySQL 托管数据库的公有模式和数据导入模式。有关更多信息，请参阅[为您的数据库配置公有模式](amazon-lightsail-configuring-database-public-mode.md)和[为您的数据库配置数据导入模式](amazon-lightsail-configuring-database-data-import-mode.md)。