在腾讯云服务器(CVM)上快速安装 MySQL 8 和 Redis,推荐直接使用官方源或 Docker 方式。以下是两种高效方案的详细步骤:
✅ 方案一:使用官方包管理工具(适合生产环境,稳定可靠)
1. 更新系统并安装基础依赖
sudo apt update && sudo apt upgrade -y # Ubuntu/Debian
# 或
sudo yum update -y # CentOS/RHEL
2. 安装 MySQL 8(以 Ubuntu 为例)
添加 MySQL APT 仓库:
wget https://dev.mysql.com/get/mysql-apt-config_0.8.29-1_all.deb
sudo dpkg -i mysql-apt-config_0.8.29-1_all.deb
# 在安装弹窗中选择 MySQL 8.0,确认即可
sudo apt update
sudo apt install mysql-server -y
初始化安全设置:
sudo mysql_secure_installation
# 按提示设置 root 密码、移除匿名用户、禁止远程 root 登录等
验证安装:
mysql --version
sudo systemctl status mysql
💡 CentOS/RHEL 用户:可先启用 EPEL 和 MySQL YUM 仓库,再执行
sudo yum install mysql-community-server
3. 安装 Redis
Ubuntu/Debian:
sudo apt install redis-server -y
sudo systemctl enable redis-server
sudo systemctl start redis-server
CentOS/RHEL:
sudo yum install epel-release -y
sudo yum install redis -y
sudo systemctl enable redis
sudo systemctl start redis
验证:
redis-cli ping # 应返回 PONG
(可选)配置远程访问:
编辑 /etc/redis/redis.conf:
bind 0.0.0.0 # 允许外部连接(注意防火墙!)
protected-mode no # 谨慎开启,建议配合密码
requirepass YourStrongPassword
重启服务:
sudo systemctl restart redis
🚀 方案二:使用 Docker(最快捷,隔离性好)
前提:已安装 Docker(如未安装,见下方补充)
1. 安装 Docker(Ubuntu 示例)
curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER
newgrp docker # 重新加载用户组
2. 一键启动 MySQL 8 + Redis
# 创建网络
docker network create app-network
# 启动 MySQL 8
docker run -d
--name mysql8
--network app-network
-e MYSQL_ROOT_PASSWORD=YourRootPassword
-p 3306:3306
mysql:8.0
# 启动 Redis
docker run -d
--name redis
--network app-network
-e REDIS_PASSWORD=YourRedisPass
-p 6379:6379
redis:7-alpine
redis-server --requirepass YourRedisPass
3. 验证
docker ps
docker exec -it mysql8 mysql -u root -p # 输入密码进入 MySQL
docker exec -it redis redis-cli -a YourRedisPass # 测试 Redis
🔒 安全与优化建议
- 开放端口:在腾讯云控制台「安全组」中放行:
- MySQL:3306(仅允许可信 IP)
- Redis:6379(强烈建议绑定内网 IP 或加密码)
- 禁用公网直连:生产环境建议将 MySQL/Redis 部署在内网,通过应用服务器中转访问。
- 备份策略:定期用
mysqldump备份数据库,Redis 开启 RDB/AOF 持久化。 - 监控告警:结合腾讯云云监控(CloudMonitor)设置 CPU、内存、连接数告警。
❓ 常见问题
-
Q: 安装时卡在“等待数据库初始化”?
A: 检查磁盘空间(df -h),或手动初始化:sudo mysqld --initialize-insecure -
Q: Redis 无法从网络连接?
A: 确认安全组规则 +redis.conf中bind和protected-mode设置 + 防火墙(ufw/firewalld)
需要我提供自动化脚本(Ansible/Terraform)或针对特定操作系统(如 CentOS 7)的定制命令吗?
CLOUD技术博