阿里云ECS部署MySQL和Redis的完整指南
结论:阿里云ECS上部署MySQL和Redis的最佳实践
在阿里云ECS上部署MySQL和Redis,需要重点关注安全配置、性能优化和高可用性。以下是分步骤的详细指南,涵盖安装、配置和关键注意事项。
1. 准备工作
- 选择ECS实例:建议至少2核4GB内存(MySQL和Redis对内存敏感)。
- 操作系统:推荐CentOS 7/8或Ubuntu 20.04 LTS。
- 安全组配置:
- 开放MySQL默认端口
3306(仅限内网或指定IP)。 - 开放Redis默认端口
6379(强烈建议限制访问IP)。
- 开放MySQL默认端口
2. 部署MySQL
安装MySQL
# CentOS
sudo yum install mysql-server
sudo systemctl start mysqld
sudo systemctl enable mysqld
# Ubuntu
sudo apt install mysql-server
sudo systemctl start mysql
sudo systemctl enable mysql
安全配置
sudo mysql_secure_installation
- 设置root密码。
- 移除匿名用户、禁止远程root登录、删除测试数据库。
优化配置(/etc/my.cnf或/etc/mysql/my.cnf)
[mysqld]
bind-address = 内网IP # 限制监听IP
innodb_buffer_pool_size = 1G # 根据内存调整
max_connections = 200
重启MySQL生效:
sudo systemctl restart mysqld
3. 部署Redis
安装Redis
# CentOS
sudo yum install epel-release
sudo yum install redis
sudo systemctl start redis
sudo systemctl enable redis
# Ubuntu
sudo apt install redis-server
sudo systemctl start redis
sudo systemctl enable redis
安全配置
- 修改
/etc/redis.conf:bind 内网IP # 限制监听IP requirepass 你的密码 # 设置访问密码 protected-mode yes # 禁止公网无密码访问 - 重启Redis:
sudo systemctl restart redis
性能优化
maxmemory 2GB # 根据实例内存调整
maxmemory-policy allkeys-lru # 内存不足时淘汰策略
4. 关键注意事项
-
数据持久化:
- MySQL:定期备份(
mysqldump或阿里云RDS快照)。 - Redis:启用AOF或RDB(
save 900 1表示900秒内至少1次修改时触发快照)。
- MySQL:定期备份(
-
高可用方案:
- MySQL:主从复制或使用阿里云RDS。
- Redis:哨兵模式(Sentinel)或集群模式。
-
监控与日志:
- 使用阿里云CloudMonitor监控CPU、内存、连接数。
- MySQL日志:
/var/log/mysqld.log。 - Redis日志:
/var/log/redis/redis.log。
5. 验证服务
- MySQL连接测试:
mysql -u root -p -h 127.0.0.1 - Redis连接测试:
redis-cli -h 127.0.0.1 -a 你的密码
总结
- 核心建议:始终限制公网访问,使用强密码,并定期备份数据。
- 对于生产环境,推荐使用阿里云RDS(MySQL)和Redis企业版,以获得更好的稳定性和支持。
- 自建方案适合测试或小型项目,但需自行维护安全和性能优化。
CLOUD云计算