在 AWS EC2 实例上安装 MySQL 是一个常见的需求,尤其是在需要自定义数据库配置或使用特定版本的 MySQL 时。本文将详细介绍如何在 Amazon Linux 2 上使用 amazon-linux-extras 安装 MySQL,并解决 GPG 键问题。

一、准备工作

1.1 创建 EC2 实例

首先,确保您已经创建了一个 Amazon Linux 2 的 EC2 实例。如果您还没有创建,可以按照以下步骤操作:

  1. 登录 AWS 管理控制台。

  2. 导航至 EC2 服务页面。

  3. 点击“启动实例”按钮。

  4. 选择“Amazon Linux 2 AMI”作为操作系统镜像。

  5. 选择合适的实例类型(例如 t2.micro)。

  6. 配置实例设置,确保为实例分配一个安全组,该安全组允许从您的 IP 地址访问 SSH(端口 22)和 MySQL(端口 3306)端口。

  7. 启动实例并记录下实例的公共 DNS 名称或 IP 地址。

1.2 连接到 EC2 实例

使用 SSH 客户端连接到您的 EC2 实例。如果您使用的是 Windows,可以下载并安装 PuTTY。对于 macOS 和 Linux 用户,可以直接使用终端中的 SSH 命令。连接命令如下:

ssh -i /path/to/your-key-pair.pem ec2-user@your-instance-public-dns

请将 /path/to/your-key-pair.pem 替换为您的密钥对文件路径,将 your-instance-public-dns 替换为您的 EC2 实例的公共 DNS 名称。

二、安装 MySQL

2.1 更新系统包

连接到 EC2 实例后,首先更新系统包:

sudo yum update -y

2.1 添加 MySQL 仓库

由于 Amazon Linux 2 的默认仓库中不包含 MySQL,需要添加 MySQL 的官方仓库。下载并安装 MySQL 仓库文件:

sudo rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm

2.2 安装 MySQL 服务器

安装 MySQL 服务器:

sudo yum install mysql-server -y
sudo yum install mysql-devel -y

2.3 启动 MySQL 服务

启动 MySQL 服务并设置开机自启:

sudo systemctl start mysqld
sudo systemctl enable mysqld

2.4 初始化

MySQL 服务器安装后,初始化操作:

 mysql_secure_installation

2.9 配置远程访问(可选)

如果您需要从远程客户端访问 MySQL 数据库,需要进行以下配置:

  1. 修改 MySQL 配置文件 /etc/my.cnf,允许远程连接:

    [mysqld]
    bind-address = 0.0.0.0
  2. 重启 MySQL 服务:

    sudo systemctl restart mysqld
  3. 更新 EC2 实例的安全组规则,允许从您的 IP 地址访问 MySQL 端口(默认为 3306):

    • 在 AWS 管理控制台的 EC2 服务页面中,选择“安全组”。

    • 找到与您的实例关联的安全组,点击“编辑入站规则”。

    • 添加一个新的规则,类型选择“自定义 TCP”,端口范围输入“3306”,源输入您的 IP 地址(或选择“我的 IP”自动获取您的 IP 地址)。

三、测试 MySQL 安装

3.1 本地测试

在 EC2 实例上,使用 mysql 命令行工具测试 MySQL 安装是否成功:

mysql -u root -p -h localhost

输入用户 root 的密码后,如果能够成功登录到 MySQL 服务器,说明本地连接正常。您可以尝试执行一些简单的 SQL 语句,例如:

SHOW DATABASES;

如果能看到 mysqlperformance_schema 等系统数据库,说明 MySQL 安装成功。

3.2 远程测试(如果配置了远程访问)

如果您配置了远程访问,可以在本地计算机上使用 MySQL 客户端工具(如 MySQL Workbench)连接到 EC2 实例上的 MySQL 服务器。在客户端工具中,输入 EC2 实例的公共 IP 地址或公共 DNS 名称作为主机地址,端口输入 3306,用户名输入 root,密码输入您之前设置的密码。如果能够成功连接并执行 SQL 语句,说明远程访问配置成功。

四、总结

通过以上步骤,您已经在 AWS EC2 实例(Amazon Linux 2)上成功安装并配置了 MySQL 数据库。现在,您可以开始使用 MySQL 为您的应用程序提供数据存储和管理功能。在实际使用过程中,建议定期备份数据库,以防止数据丢失。AWS 提供了多种备份解决方案,如 EBS 快照和 RDS 自动备份等,您可以根据您的需求选择合适的备份策略。

安装 MySQL 只是构建应用程序基础设施的第一步。接下来,您可以根据应用程序的需求,继续在 EC2 实例上安装和配置其他软件和服务,如 Web 服务器、应用程序服务器等,以构建完整的应用程序架构。AWS 提供了丰富的服务和工具,能够帮助您轻松地部署和管理各种应用程序。