在阿里云服务器(ECS)上安装 MySQL 和 Redis,通常有两种主流方式:使用官方软件源安装(适合生产环境,便于管理升级)和 使用 Docker 容器化部署(适合快速搭建、隔离环境)。
以下是针对这两种方式的详细操作步骤。
前置准备
无论选择哪种方式,请先确保:
- 登录阿里云 ECS:通过 SSH 工具(如 Xshell, Putty, Terminal)连接到你的 Linux 服务器。
- 检查系统版本:输入
cat /etc/os-release确认是 CentOS/Alibaba Cloud Linux 还是 Ubuntu。 - 开放端口:
- 登录阿里云控制台 -> 实例详情 -> 安全组。
- 添加入方向规则,放行以下端口:
- MySQL:
3306 - Redis:
6379 - (可选) SSH:
22(默认已开)
- MySQL:
方案一:使用官方软件源安装(推荐用于生产环境)
这种方式安装的数据库直接运行在宿主机上,性能损耗最小,但需要手动处理备份和依赖。
1. 安装 MySQL
CentOS / Alibaba Cloud Linux:
# 1. 安装 yum 源 (以 MySQL 8.0 为例)
sudo yum install -y https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
# 如果提示找不到包,可能需要先配置 epel 源或手动下载 rpm 包
# 2. 安装 MySQL 服务端
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
# 根据输出的临时密码登录:mysql -u root -p
# 登录后执行 SQL 修改密码(必须包含大小写数字特殊字符):
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新强密码';
Ubuntu:
# 1. 更新源
sudo apt update
sudo apt install -y gnupg curl
# 2. 添加 MySQL APT 仓库
curl -sS 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] https://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
2. 安装 Redis
CentOS / Alibaba Cloud Linux:
# 1. 安装 EPEL 源
sudo yum install -y epel-release
# 2. 安装 Redis
sudo yum install -y redis
# 3. 修改配置文件 (允许远程连接)
sudo vi /etc/redis.conf
# 找到 bind 127.0.0.1,改为 bind 0.0.0.0 (注意:生产环境建议配合防火墙策略)
# 找到 protected-mode yes,保持为 yes (更安全)
# 找到 requirepass,设置密码,例如:requirepass 你的强密码
# 4. 启动
sudo systemctl start redis
sudo systemctl enable redis
Ubuntu:
sudo apt update
sudo apt install -y redis-server
# 编辑配置
sudo vi /etc/redis/redis.conf
# 同样修改 bind 和 requirepass
# 启动
sudo systemctl start redis
sudo systemctl enable redis
方案二:使用 Docker 安装(推荐用于开发/测试/微服务)
Docker 方式隔离性好,安装清理方便,且无需担心依赖冲突。需先安装 Docker。
1. 安装 Docker
- CentOS:
yum install -y docker && systemctl start docker - Ubuntu:
apt install -y docker.io && systemctl start docker
2. 一键启动 MySQL
docker run -d
--name mysql-db
-e MYSQL_ROOT_PASSWORD=your_strong_password
-p 3306:3306
-v /data/mysql:/var/lib/mysql
mysql:8.0
说明:-v 参数将数据挂载到宿主机的 /data/mysql 目录,防止容器删除后数据丢失。
3. 一键启动 Redis
docker run -d
--name redis-db
-p 6379:6379
-v /data/redis:/data
redis:latest
redis-server --appendonly yes --requirepass your_strong_password
说明:--appendonly yes 开启持久化,requirepass 设置访问密码。
⚠️ 关键注意事项(必读)
-
X_X访问安全:
- 强烈建议不要直接在数据库中绑定
0.0.0.0并完全开放给公网,除非你设置了复杂的白名单。 - 最佳实践:在阿里云安全组中,只允许特定 IP(如你公司的办公 IP 或本地开发机 IP)访问 3306 和 6379 端口。
- 或者,使用内网互通:如果你的应用也部署在阿里云同一地域的其他 ECS 上,请使用内网 IP连接,不要走公网。
- 强烈建议不要直接在数据库中绑定
-
修改绑定地址:
- 如果是单机部署且仅本地应用访问,MySQL 的
bind-address应设为127.0.0.1。 - 如果需要外部连接,需设为
0.0.0.0,但必须配合安全组和强密码。
- 如果是单机部署且仅本地应用访问,MySQL 的
-
数据持久化:
- 如果使用 Docker,务必使用
-v挂载卷,否则容器重启或重建后数据会清空。 - 如果使用原生安装,定期使用
mysqldump或rdb/aof机制进行备份。
- 如果使用 Docker,务必使用
-
阿里云云数据库 RDS:
- 如果你的业务对稳定性、高可用性和运维省心程度要求很高,建议直接使用阿里云的 RDS (Relational Database Service) 和 Redis 云数据库 产品。它们提供自动备份、主从切换、监控告警,虽然按量付费,但能极大降低运维风险。
如果你需要具体的某个版本的命令,或者遇到安装报错,请告诉我你的操作系统版本(如 CentOS 7 或 Ubuntu 20.04),我可以提供更精确的指令。
轻量云Cloud