在阿里云 ECS 上安装 MySQL 和 Redis 主要有两种方式:手动安装(适合需要深度定制或学习原理)和 使用云原生服务(推荐,稳定且运维成本低)。
以下是两种方案的详细操作指南:
方案一:手动安装(适用于自建环境、学习或特殊配置需求)
这种方式需要在 ECS 内部通过命令行安装软件。假设你使用的是 CentOS 7/8 或 Ubuntu 20.04/22.04。
1. 前置准备
- 安全组配置:登录阿里云控制台 -> 云服务器 ECS -> 实例列表 -> 点击实例 ID -> 安全组 -> 配置规则。
- 必须放行以下端口(仅建议对特定 IP 开放,不要对
0.0.0.0/0开放生产环境数据库):- MySQL:
3306 - Redis:
6379
- MySQL:
- 必须放行以下端口(仅建议对特定 IP 开放,不要对
- 连接服务器:使用 SSH 工具(如 Xshell, Putty, Terminal)登录 ECS。
2. 安装 MySQL (以 MySQL 8.0 为例)
CentOS 系统示例:
# 1. 添加 Yum 源 (需下载对应版本的 repo 包,此处以官方通用步骤为例)
sudo yum install -y https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
sudo yum-config-manager --enable mysql80-community
# 2. 安装 MySQL Server
sudo yum install -y mysql-community-server
# 3. 启动并设置开机自启
sudo systemctl start mysqld
sudo systemctl enable mysqld
# 4. 获取初始 root 密码 (非常重要!)
sudo grep 'temporary password' /var/log/mysqld.log
# 5. 修改 root 密码
mysql_secure_installation
# 按提示输入刚获取的临时密码,然后设置新密码
Ubuntu 系统示例:
# 1. 更新源
sudo apt update
sudo apt install -y gnupg curl
# 2. 添加 GPG 密钥和源
curl -fsSL https://repo.mysql.com/apt-key | sudo gpg --dearmor -o /usr/share/keyrings/mysql-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/mysql-archive-keyring.gpg] http://repo.mysql.com/apt/ubuntu $(lsb_release -cs) mysql-8.0" | sudo tee /etc/apt/sources.list.d/mysql.list
# 3. 安装
sudo apt update
sudo apt install -y mysql-server
# 4. 启动
sudo systemctl start mysql
sudo systemctl enable mysql
# 5. 设置密码 (Ubuntu 默认可能要求用插件验证,建议直接重置)
sudo mysql_secure_installation
3. 安装 Redis
CentOS 系统示例:
# 1. 安装 EPEL 源 (如果还没有)
sudo yum install -y epel-release
# 2. 安装 Redis
sudo yum install -y redis
# 3. 启动并设置自启
sudo systemctl start redis
sudo systemctl enable redis
# 4. 修改配置文件 (可选,例如绑定内网 IP 或设置密码)
# 编辑 /etc/redis.conf
# bind 127.0.0.1 <-- 生产环境建议改为 ECS 内网 IP,并配合安全组限制
# requirepass your_strong_password <-- 设置强密码
sudo systemctl restart redis
Ubuntu 系统示例:
# 1. 安装
sudo apt update
sudo apt install -y redis-server
# 2. 启动
sudo systemctl start redis-server
sudo systemctl enable redis-server
# 3. 配置密码
# 编辑 /etc/redis/redis.conf
# 取消注释并修改:requirepass your_strong_password
sudo systemctl restart redis-server
⚠️ 重要安全提示:手动安装的数据库通常没有内置的高可用备份机制。务必定期执行
mysqldump备份数据,并严格限制安全组权限。
方案二:使用阿里云云原生服务(强烈推荐用于生产环境)
对于生产环境,直接使用阿里云托管的 RDS (MySQL) 和 Redis 云数据库版 是最佳选择。
优势:
- 高可用:自动主备切换,数据多副本存储。
- 运维省心:无需处理补丁更新、备份恢复、监控告警。
- 性能优化:针对阿里云底层硬件做了深度优化。
- 网络隔离:ECS 与 RDS/Redis 在同一个 VPC 内,内网互通,速度快且安全。
操作步骤:
- 购买实例:
- 在阿里云控制台搜索 "云数据库 RDS",选择 MySQL 版本,创建实例。
- 搜索 "云数据库 Redis 版",选择社区版或企业版,创建实例。
- 网络连通:
- 在购买 RDS/Redis 时,确保 VPC 和 交换机 与你自己的 ECS 一致。
- 这样 ECS 可以通过内网 IP(如
rm-xxxxx.mysql.rds.aliyuncs.com或内网 IP)直接连接,无需经过公网。
- 白名单配置:
- 在 RDS/Redis 的控制台找到“白名单”或“访问控制”。
- 将你的 ECS 内网 IP 或 ECS 所在的安全组 ID 加入白名单。
- 应用连接:
- 在代码中配置连接地址时,使用 RDS/Redis 提供的 内网地址。
总结与建议
| 特性 | 手动安装 (ECS 内部) | 阿里云托管 (RDS/Redis) |
|---|---|---|
| 适用场景 | 开发测试、学习、极低成本 Demo | 生产环境、企业级应用 |
| 维护成本 | 高 (需自己备份、打补丁、监控) | 低 (平台自动维护) |
| 数据安全 | 依赖人工操作,风险较高 | 自动备份、容灾、加密 |
| 网络性能 | 内网快,但受限于单机资源 | 独享资源,弹性伸缩 |
| 费用 | 仅 ECS 费用 | 实例费 + 存储费 + 流量费 |
最终建议:
如果是正式业务上线,请直接使用 方案二(云原生服务)。虽然每月会多出几百元费用,但它能为你节省大量的运维时间,并极大降低数据丢失的风险。如果是为了学习 Linux 命令或搭建本地测试环境,则可以选择方案一。
云服务器