亚马逊云科技

广告

安信SSL证书

广告

如何使用Amazon RDS数据库部署WordPress

美国云服务器推荐

数据库实例存放了 WordPress 网站的所有重要数据,如果数据库出现故障,网站可能会随之崩溃,甚至可能会丢失数据。为了简化数据库管理并确保高可用性,AWS提供的Amazon RDS 可帮助站长实现自动备份、恢复、定期更新和打补丁等丰富功能。本教程主要介绍如何使用 Amazon RDS 来配置所安装的 WordPress。

许多 WordPress 网站安装指南建议将 MySQL 数据库与 WordPress 部署在同一服务器上。虽然这种方法在初期可能可行,但将 MySQL 和 WordPress 安装在同一服务器上存在几个潜在问题:

1、资源竞争:MySQL 和 WordPress 共享同一台服务器的计算资源,可能导致网站性能下降。

2、水平扩展受限:随着网站流量的增加,无法通过添加更多 WordPress 服务器来实现水平扩展。

3、维护负担:需要自行执行所有数据库维护工作,例如备份和安全升级。

使用 Amazon RDS for MySQL,可以将数据库部署在与 WordPress 不同的实例上,避免资源争夺。此外,可以将多个 WordPress 站点连接到同一个 Amazon RDS 实例,从而实现更好的水平扩展。Amazon RDS for MySQL 还提供自动备份和安全补丁功能,简化了数据库管理工作。

Amazon RDS(关系型数据库)现提供长达12个月免费试用,并提供一定的使用量,详情可访问AWS官网领取。

Amazon RDS

相关阅读:《AWS RDS是什么 Amazon RDS是什么类型的服务

一、前提条件

1、请使用个人账户或为本教程创建一个新的 AWS 账户(避免使用组织账户),以确保能够充分利用必要的服务,并避免因账户问题导致的资源不可用。具体注册教程:《亚马逊云科技账号注册流程图解

2、设置好 AWS 账户后,可以继续进行下一步,即使用 Amazon RDS 启动 MySQL 数据库实例。

二、使用Amazon RDS创建MySQL数据库

1、打开 AWS 管理控制台,输入 RDS,在搜索框中选择 RDS 进入 RDS 服务控制台。

Amazon RDS创建MySQL数据库

2、点击 Create database(创建数据库) 按钮,启动创建过程。

Amazon RDS创建MySQL数据库

3、在创建向导中,选择数据库引擎。Amazon RDS 支持多种数据库引擎,包括 MySQL。由于 WordPress 使用 MySQL,因此在数据库构建方法中选择 Standard create(标准创建),并选择 MySQL 作为数据库引擎。

Amazon RDS创建MySQL数据库

4、在模板区域,选择 AWS Free tier(AWS 免费套餐) 选项,以便在不产生费用的前提下完成本教程中的实验。

Amazon RDS创建MySQL数据库

5、在 Settings(设置) 模块中,设置数据库实例标识符为 “wordpress”,并配置主用户名和密码。请确保使用强密码,并妥善保存这些信息,以便在后续步骤中使用。

Amazon RDS创建MySQL数据库

6、设置用户名和密码后,可以完成其他配置。建议使用适合测试或小规模应用的小型实例类,以便利用 AWS 的免费套餐。

Amazon RDS创建MySQL数据库

Amazon RDS创建MySQL数据库

7、Amazon RDS 实例必须部署在 Amazon VPC 中。AWS 为每个区域创建了一个默认的 VPC,可以使用默认设置。

Amazon RDS创建MySQL数据库

8、如果需要自定义部署,请点击 Additional configuration(附加配置),将 Initial database name(初始数据库名称) 设置为 “wordpress”。这将确保在初始化时自动创建数据库。

Amazon RDS创建MySQL数据库

9、其余字段保持默认设置。创建向导的底部将显示 Amazon RDS 数据库的每月费用预估。如果符合 Amazon RDS 免费套餐的条件,将会收到提示。点击 Create database(创建数据库) 完成创建。

Amazon RDS创建MySQL数据库

10、页面弹出成功提示,表明数据库已成功创建。

Amazon RDS创建MySQL数据库

三、创建Amazon EC2实例以托管WordPress网站

为什么选择 Amazon EC2 实例来运行 WordPress 网站?在开始使用 WordPress 时,可能选择在个人笔记本电脑或台式机上安装并运行 WordPress 进行测试。这种方法虽然适合本地实验,但对于实际的网站运营来说,存在许多限制。首先,网站将受到本地硬件资源的限制,易于出现性能瓶颈。此外,只有在电脑保持运行时,网站才能正常访问,且无法通过公共互联网向其他用户开放。

相反,使用云服务器是一种更优的解决方案。通过 Amazon EC2,可以按需预置服务器实例,灵活选择适合网站需求的配置。Amazon EC2 提供多种不同类型的服务器实例,按小时计费,可以根据需要快速扩展资源。通过部署在 Amazon EC2上的 WordPress,可以确保网站的稳定性和可访问性,让全球用户都能通过互联网访问网站。

以下步骤将指导启动一个 Amazon EC2 实例,并用来托管 WordPress 网站。

1、登录 AWS 管理控制台

首先登录到 AWS 管理控制台,选择 Amazon EC2 控制台,点击 Launch instance(启动实例) 按钮,打开实例创建向导。

创建Amazon EC2实例

2、在弹出的页面上,为实例输入名称,例如 “wordpress app”。

创建Amazon EC2实例

3、选择 Amazon 机器镜像 (AMI)

接下来,选择一个适合的 AMI,这将决定新 EC2 实例上安装的基本软件。可选的 AMI 包括 Amazon Linux、Red Hat Enterprise Linux、Ubuntu 以及 Microsoft Server 等。

为本教程实验,选择 Amazon Linux 2 AMI (HVM)。注意:如果选择 Amazon Linux 2023,某些命令可能会无法正常工作。

创建Amazon EC2实例

4、选择 EC2 实例类型

向下滚动页面,选择适合的 EC2 实例类型。实例类型配置包含 CPU、内存 (RAM)、存储和网络能力。
对于本次实验,我们选择 t2.micro 实例类型,该类型适用于 AWS 免费套餐,每月可以获得 750 小时的使用时长。

创建Amazon EC2实例

5、配置密钥对

在实例启动向导中,会看到配置密钥对的详细信息页面。密钥对用于通过 SSH 访问实例。

展开 Key pair (login),点击 Create new key pair(创建新密钥对)。

创建Amazon EC2实例

为密钥对命名并完成其他配置,然后单击 Create key pair(创建密钥对)。密钥对创建成功后,.pem 文件将下载到计算机上。

创建Amazon EC2实例

创建Amazon EC2实例

6、配置安全组

在启动实例之前,需要配置安全组。安全组定义了一组网络规则,决定允许哪些类型的网络流量访问 EC2 实例。需要允许以下两种流量类型:

  • 来自当前 IP 地址的 SSH 流量,以便能通过 SSH 协议登录 EC2 实例并进行 WordPress 配置;
  • 来自所有 IP 地址的 HTTP 流量,使用户能够访问 WordPress 网站。

选择 Allow SSH traffic from My IP(允许来自我的 IP 的 SSH) 和 Allow HTTP traffic from the internet(允许来自互联网的 HTTP 流量)。

创建Amazon EC2实例

创建Amazon EC2实例

7、编辑网络设置

在 Network settings(网络设置) 区域,点击 Edit(编辑) 按钮。向下滚动到 Firewall (security groups)(防火墙(安全组)) 区域,将安全组名称设置为 “wordpress”。

创建Amazon EC2实例

创建Amazon EC2实例

8、启动 EC2 实例

点击 Launch instance(启动实例) 按钮,创建 EC2 实例。

创建Amazon EC2实例

应该会看到成功提示,表示 EC2 实例正在创建中。恭喜,已成功启动一个 EC2 实例!在下一个模块中,我们将配置 Amazon RDS 数据库,以允许 EC2 实例访问该数据库。

创建Amazon EC2实例

四、配置Amazon RDS数据库

Amazon RDS 数据库两种主要的安全策略:

  • 网络安全防控:拒绝来自非授权 IP 地址的流量,限制对数据库实例的访问;
  • 密码身份验证与授权:只允许使用正确用户名和密码的访问请求,限制对数据库的访问。

1、首先,需要修改 Amazon RDS 数据库的设置,以允许来自 EC2 实例的流量访问该数据库。

2、前往 Amazon RDS 控制台,并点击 Databases(数据库) 页面。找到并单击在上个模块中创建的 MySQL 数据库名称。

配置Amazon RDS数据库

3、滚动到 Connectivity & security(连接与安全) 选项卡,找到 VPC security groups(VPC 安全组) 下的安全组 ID,并单击它。将跳转到与数据库关联的安全组页面。

配置Amazon RDS数据库

4、在安全组页面,选择 Inbound rules(入站规则) 选项卡,然后点击 Edit inbound rules(编辑入站规则) 按钮以更改安全组规则。

配置Amazon RDS数据库

5、默认情况下,安全组中有一条规则,允许来自该默认安全组中的其他实例的所有入站流量。然而,由于托管 WordPress 网站的 EC2 实例不在该安全组中,它将无法访问 Amazon RDS 数据库。

6、配置 MySQL 访问规则

将 Type(类型) 属性更改为 MYSQL/Aurora。此时,Protocol(协议) 和 Port range(端口范围) 将自动更新。

配置Amazon RDS数据库

配置Amazon RDS数据库

删除 Source(源) 下的当前安全组配置,然后将其设置为 “wordpress”。控制台将显示可用的安全组,选择为 EC2 实例配置的 “wordpress” 安全组。

配置Amazon RDS数据库

7、选择 “wordpress” 安全组后,系统将自动填入安全组 ID。该规则允许任何关联到该安全组的 EC2 实例访问 MySQL 数据库。

完成后,点击 Save rules(保存规则) 按钮以保存更改。

配置Amazon RDS数据库

8、查找 EC2 实例信息

前往 EC2 控制台 中的 Instances(实例) 页面,找到用于托管 WordPress 网站的 EC2 实例。
选择该实例,将在实例信息中看到其公网 IPv4 地址和公网 IPv4 DNS 信息。

配置Amazon RDS数据库

9、找到下载的实例密钥对的 .pem 文件,通常位于 Downloads(下载) 文件夹中。

对于 Mac 或 Linux 用户:

打开终端窗口;

运行以下命令,通过 SSH 连接到实例。请将 “<path/to/pem/file>” 替换为文件路径(例如 “~/Downloads/wordpress.pem”),将 “<publicIpAddress>” 替换为 EC2 实例的公网 IP 地址。

chmod 400 <path/to/pem/file>
ssh -i <path/to/pem/file> ec2-user@<public_IP_DNSAddress>

成功连接后,将在终端中看到连接成功的信息。

配置Amazon RDS数据库

对于 Windows 用户:

使用 Windows 的 SSH 客户端 PuTTY 连接 EC2 实例。需要使用已下载的 .pem 文件和 EC2 实例的公网 IP 地址。

10、现在,已通过 SSH 连接到 EC2 实例,接下来将连接到 MySQL 数据库。

在终端中运行以下命令以安装 MySQL 客户端,用于与数据库交互:

sudo yum install -y mysql

如果此命令出现错误,请确认启动了正确的 EC2 实例。

11、查找 Amazon RDS 数据库的主机名

在 AWS 控制台中找到 Amazon RDS 数据库的主机名。

配置Amazon RDS数据库

该信息显示在 Connectivity & security(连接与安全) 区域的 Endpoint(端点)。

在EC2实例上部署WordPress

在终端中执行以下命令,为 MySQL 主机设置环境变量。请务必将 “” 替换为 RDS 实例的主机名。
export MYSQL_HOST=<your-endpoint>

然后,在终端上运行以下命令,连接 MySQL 数据库。用创建 Amazon RDS 数据库时配置的主用户名和密码替换 “<user>” 和 “<password>”。

mysql –user=<user> –password=<password> wordpress

最后,为 WordPress 应用程序创建一个数据库用户,并赋予该用户访问 wordpress 数据库的权限。

在终端中运行以下命令:

CREATE USER ‘wordpress’ IDENTIFIED BY ‘wordpress-pass’;
GRANT ALL PRIVILEGES ON wordpress.* TO wordpress;
FLUSH PRIVILEGES;
Exit

示例中,密码是 wordpress-pass。但我们强烈建议使用更复杂的密码,以保护数据库。记下配置的用户名和密码,因为在下一个模块中 WordPress 设置时会用到它们。

五、在EC2实例上部署WordPress

要运行 WordPress,需要在 EC2 实例上运行一个网页服务器。开源的 Apache 网页服务器是最常用的 WordPress 网页服务器。

1、安装 Apache 网页服务器

在终端上运行以下命令,以在 EC2 实例上安装 Apache:

sudo yum install -y httpd

执行该命令后,应该会在终端的输出中看到正在安装的包信息。

2、启动 Apache 网页服务器

接下来,启动 Apache 网页服务器:

sudo service httpd start

此时,可以通过浏览器访问 EC2 实例的公网 DNS 地址来验证 Apache 是否正在运行。可以在 EC2 控制台的实例详情选项卡中找到实例的公网 IPv4 DNS 信息。

在EC2实例上部署WordPress

3、下载并配置 WordPress

在终端中运行以下命令以下载并解压 WordPress 软件:

wget https://wordpress.org/latest.tar.gz
tar -xzf latest.tar.gz

运行 “ls” 命令查看目录内容,应该能看到一个 tar 文件和一个名为 “wordpress” 的已解压目录:

$ ls
latest.tar.gz wordpress

接下来,进入 “wordpress” 目录,并创建默认配置文件的副本:

cd wordpress
cp wp-config-sample.php wp-config.php

然后,使用 nano 编辑器打开 “wp-config.php” 文件:

nano wp-config.php

4、配置数据库连接信息

在 “wp-config.php” 文件中,需要更改以下数据库配置:

// MySQL settings You can get this info from your web host //
/ The name of the database for WordPress */
define( ‘DB_NAME’, ‘database_name_here’ );

/ MySQL database username */
define( ‘DB_USER’, ‘username_here’ );

/ MySQL database password */
define( ‘DB_PASSWORD’, ‘password_here’ );

/ MySQL hostname */
define( ‘DB_HOST’, ‘localhost’ );

将参数值更改为:

  • “DB_NAME”:”wordpress”;
  • “DB_USER”:在上一模块中创建的数据库用户名;
  • “DB_PASSWORD”:在上一模块中所创建用户的密码;
  • “DB_HOST”:在上一模块中查看到的数据库主机名称。

接下来,需要配置 Authentication Unique Keys and Salts(认证主键和盐加密) 部分。该部分在配置文件中如下所示:

/@+
* Authentication Unique Keys and Salts.
*
* Change these to different unique phrases!
* You can generate these using the {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org secret-key service}
* You can change these at any point in time to invalidate all existing cookies. This will force all users to have to log in again.
*
* @since 2.6.0
*/
define( ‘AUTH_KEY’, ‘put your unique phrase here’ );
define( ‘SECURE_AUTH_KEY’, ‘put your unique phrase here’ );
define( ‘LOGGED_IN_KEY’, ‘put your unique phrase here’ );
define( ‘NONCE_KEY’, ‘put your unique phrase here’ );
define( ‘AUTH_SALT’, ‘put your unique phrase here’ );
define( ‘SECURE_AUTH_SALT’, ‘put your unique phrase here’ );
define( ‘LOGGED_IN_SALT’, ‘put your unique phrase here’ );
define( ‘NONCE_SALT’, ‘put your unique phrase here’ );

前往“https://api.wordpress.org/secret-key/1.1/salt/”生成这部分配置值,并用生成的内容替换上述代码中的所有内容。

完成后,按 “CTRL + O” 保存文件,然后按 “Enter” 确认,再按 “CTRL + X” 退出 nano 编辑器。

5、安装WordPress所需的依赖项

在终端中运行以下命令,安装 WordPress 应用程序所需的依赖项:

sudo amazon-linux-extras install -y mariadb10.5 php8.2

6、将 WordPress 文件复制到 Apache 目录

更改目录到主目录:

cd /home/ec2-user

然后,将 WordPress 应用程序文件复制到 Apache 网页服务器的 “/var/www/html” 目录:

sudo cp -r wordpress/* /var/www/html/

7、重启 Apache 网页服务器

最后,重启 Apache 网页服务器以使更改生效:

sudo service httpd restart

8、验证 WordPress 安装

在浏览器中访问 EC2 实例的公网 DNS 地址,应该能看到 WordPress 欢迎页面。安装过程大约需要 5 分钟。

在EC2实例上部署WordPress

六、测试网站和清理资源

1、删除 EC2 实例

前往 EC2 实例列表 页面,找到创建的 EC2 实例。

选中该实例,点击 Actions(操作) 按钮。在下拉菜单中选择 Instance State(实例状态),然后点击 Terminate Instance(终止实例)。

测试网站和清理资源

测试网站和清理资源

点击 Terminate(终止) 按钮确认终止实例。

测试网站和清理资源

2、删除 Amazon RDS 实例

前往 AWS RDS 控制台。

找到并选中用于存储 WordPress 网页数据的 Amazon RDS 实例。

点击 Actions(操作) 按钮,在下拉菜单中选择 Delete(删除)。

测试网站和清理资源

通过以上步骤,成功清理了在实验过程中创建的资源,避免了后续的不必要费用。再次祝贺成功搭建并测试了 WordPress 网站!如果将来有更多希望探索的内容,欢迎随时返回。

测试网站和清理资源

相关推荐:

亚马逊VPS怎么免费领取 亚马逊免费VPS领取教程

如何利用AWS免费搭建大容量个人网盘

AWS CloudFront免费网络加速教程

免费云服务器怎样申请?

亚马逊云储存服务怎么开通?

免费数据库哪里有?如何获得免费数据库?

(本文由美国主机侦探原创,转载请注明出处“美国主机侦探”和原文地址!)

主机侦探企业微信

微信扫码加好友进群

主机优惠码及时掌握

主机侦探QQ群

QQ群号:938255063

主机优惠发布与交流

温馨提示:

1、本站部分图片来源于互联网,如有侵权请联系删除。邮箱:2942802716#qq.com(#改为@)

2、本文评论没有专人回复,如果您有问题请到美国主机侦探论坛提问!

3、美国主机侦探免费为您提供美国主机购买咨询。

RAKsmart美国服务器
返回顶部