在阿里云 ECS 上安装 MySQL 和 Redis,通常有两种主流方案:使用云原生托管服务(推荐)或 手动安装在 ECS 实例内部。
对于生产环境,强烈建议使用阿里云的 RDS(MySQL) 和 Redis 实例,因为它们提供自动备份、高可用架构、监控告警和更低的运维成本。如果你是为了学习、测试或特定场景需要自己管理,则可以选择手动安装。
以下是两种方案的详细操作指南:
方案一:使用阿里云托管服务(推荐用于生产环境)
这种方式无需在 ECS 上安装软件,只需购买实例并配置白名单即可连接。
1. 购买 RDS MySQL
- 登录阿里云控制台,进入 云数据库 RDS 版。
- 点击“创建实例”,选择版本(如 MySQL 8.0)、规格(按量付费或包年包月)。
- 完成支付后,在实例详情页找到 白名单设置。
- 将你的 ECS 内网 IP(或
0.0.0.0仅限测试)添加到白名单中。 - 记录实例的 内网连接地址(格式类似
rm-xxxx.mysql.rds.aliyuncs.com)。
2. 购买云数据库 Redis 版
- 进入 云数据库 Redis 版 控制台。
- 创建实例(建议选“集群版”或“主从版”以获得高可用)。
- 同样在 白名单 中添加 ECS 的内网 IP。
- 记录 内网连接地址 和 端口(默认 6379)。
3. 在代码中配置连接
在你的后端代码(如 Java/Python/Node.js)中,将数据库连接字符串指向上述获取的内网地址。由于都在同一地域,通过内网连接速度极快且免费。
方案二:手动安装在 ECS 实例内部(适合开发/测试)
如果你决定自己在 ECS 上安装,请确保系统已更新,并根据操作系统类型执行以下命令。
前置准备:
- 登录阿里云控制台 -> ECS 实例 -> 安全组。
- 务必放行端口:MySQL (3306) 和 Redis (6379)。
- 注意:如果是公网访问,建议仅在本地开发时开放,生产环境严禁直接对公网开放这些端口,否则极易被攻击。
步骤 1:更新系统并安装依赖
以 CentOS/Alibaba Cloud Linux 为例(Ubuntu 命令略有不同,见下方备注):
sudo yum update -y
# 安装 EPEL 源(如果需要)
sudo yum install epel-release -y
步骤 2:安装 MySQL
阿里云推荐使用官方 YUM 源安装最新版(以 MySQL 8.0 为例):
- 下载并安装 RPM 包:
wget https://dev.mysql.com/get/mysql80-community-release-el7-11.noarch.rpm sudo rpm -ivh mysql80-community-release-el7-11.noarch.rpm - 安装 MySQL Server:
sudo yum install mysql-server -y - 启动并设置开机自启:
sudo systemctl start mysqld sudo systemctl enable mysqld -
初始化密码(非常重要,首次安装会生成随机密码):
# 查看临时密码 sudo grep 'temporary password' /var/log/mysqld.log # 修改 root 密码 mysql_secure_installation按照提示输入新密码,并回答后续问题(是否移除匿名用户等)。
步骤 3:安装 Redis
Redis 在阿里云源中通常可以直接安装,或者使用官方二进制文件。这里推荐安装最新版:
-
安装 Epel 源(如果之前没装):
sudo yum install epel-release -y -
安装 Redis:
sudo yum install redis -y -
修改配置文件(允许绑定所有 IP,方便本地调试,生产环境建议只绑定 127.0.0.1):
sudo vi /etc/redis.conf找到
bind行,注释掉或改为bind 127.0.0.1 ::1(仅允许本地);
找到protected-mode,设置为yes;
找到requirepass,取消注释并设置密码(例如requirepass your_strong_password)。 -
启动并设置开机自启:
sudo systemctl start redis sudo systemctl enable redis
步骤 4:验证安装
- MySQL:
mysql -u root -p # 输入刚才设置的密码,如果能进入命令行即成功 - Redis:
redis-cli # 如果设置了密码,先 auth your_strong_password,然后输入 ping 返回 PONG 即成功
⚠️ 重要安全建议
无论采用哪种方案,请务必遵守以下安全原则:
- 网络隔离:
- 在 ECS 的 安全组 中,不要 对
0.0.0.0/0开放 3306 和 6379 端口。 - 仅允许同地域的其他 ECS 内网 IP 访问,或者仅允许你自己的办公 IP 访问(如果是开发机)。
- 在 ECS 的 安全组 中,不要 对
- 强密码策略:
- 数据库账号必须设置复杂密码(大小写+数字+特殊字符),避免使用
root作为普通应用账号。
- 数据库账号必须设置复杂密码(大小写+数字+特殊字符),避免使用
- 数据备份:
- 如果使用自建 MySQL,请编写脚本定期备份到 OSS(对象存储)。
- 如果使用 RDS,开启自动备份功能。
- 性能优化:
- 自建 Redis 时,建议开启持久化(AOF/RDB),防止重启丢失数据。
总结建议:
如果是正式上线项目,请直接使用 方案一(RDS + Redis 实例),虽然每月有少量费用,但能节省大量运维时间并保障数据安全。如果是个人学习或临时测试,可以使用 方案二,但在关闭服务器前记得删除敏感数据或重置密码。
轻量云Cloud