✅ Ubuntu 24.04 在线安装 Redis 8.x 完整教程
✅ 教程说明
✅ 适配 Ubuntu 24.04 LTS 系统,全程在线安装,最终稳定得到 Redis 8.x 版本(如你的 8.4.0)
✅ 解决版本混淆/安装失败问题,所有命令可直接复制执行,新手友好
✅ 包含「安装+验证+远程访问配置+防火墙放行+运维命令」全套流程,无额外冗余步骤
📌 一、前置环境准备(更新系统+安装依赖)
先更新系统包索引,安装添加官方源必需的工具,避免后续步骤依赖报错,执行一次即可:
bash
# 更新系统软件源+升级已安装包,-y 自动确认所有操作
sudo apt update && sudo apt upgrade -y
# 安装添加第三方源必备工具(密钥验证、源管理、网络请求)
sudo apt install -y curl gnupg2 software-properties-common lsb-release apt-transport-https
📌 二、清理旧版本 Redis(可选,版本异常必做)
若系统中存在其他 Redis 版本(6.x/7.x/9.x),先彻底卸载避免冲突,确保最终纯净安装 Redis 8.x:
bash
# 彻底卸载Redis全量组件(含配置文件+数据+工具,不留残留)
sudo apt remove --purge -y redis-server redis redis-tools
# 清理卸载残留依赖+系统缓存
sudo apt autoremove -y && sudo apt clean
📌 三、添加 Redis 官方软件源(安装8.x核心步骤)
Redis 8.x 为官方稳定版,Ubuntu 24.04 默认源未收录,必须添加官方源才能在线安装,步骤标准无报错:
步骤1:导入 Redis 官方 GPG 密钥(验证包完整性,防篡改)
bash
curl -fsSL https://packages.redis.io/gpg | sudo gpg --dearmor -o /usr/share/keyrings/redis-archive-keyring.gpg
步骤2:写入官方源到系统源列表(适配Ubuntu24.04)
bash
echo "deb [signed-by=/usr/share/keyrings/redis-archive-keyring.gpg] https://packages.redis.io/deb $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/redis.list
📌 四、在线安装 Redis 8.x 稳定版(核心操作)
刷新源索引后,直接安装即可自动获取 Redis 8.x 最新稳定版(无需手动指定版本,官方源默认推送):
bash
# 刷新源索引,加载Redis官方源的包信息
sudo apt update
# 安装Redis 8.x核心包(自动适配8.x最新版,如8.4.0)
sudo apt install -y redis-server
📌 五、验证 Redis 8.x 安装成功(必做校验,3步确认)
执行以下3条命令,全部验证通过 即代表安装成功,精准匹配你的需求:
✅ 校验1:查看 Redis 版本(核心验证)
bash
redis-server --version
✅ 成功输出示例(显示 8.x.x 即达标,和你的版本一致):
Redis server v=8.4.0 sha=00000000:1 malloc=jemalloc-5.3.0 bits=64 build=27c2d682528c8769
✅ 校验2:检查 Redis 服务运行状态
bash
sudo systemctl status redis-server
✅ 成功标志:输出中显示 active (running)(绿色),代表服务已正常启动。
✅ 校验3:客户端连接测试(功能完整性校验)
bash
redis-cli
进入客户端后执行 ping 命令,返回 PONG 即代表服务功能正常:
bash
127.0.0.1:6379> ping
PONG
💡 退出客户端:输入
exit回车即可。
📌 六、核心配置(允许 IPv4+IPv6 所有地址远程访问)
适配你的核心需求,修改配置实现「全IP访问+安全加固」,直接替换配置即可,Redis 8.x 完美兼容:
步骤1:编辑 Redis 主配置文件(新手友好的nano编辑器)
bash
sudo nano /etc/redis/redis.conf
步骤2:修改 4 个核心配置项(直接替换,精准生效)
✅ 配置1:允许所有 IPv4 + IPv6 地址访问(你的核心需求)
找到原配置行:bind 127.0.0.1 ::1
替换为(一行搞定双协议全放行,无冗余):
conf
bind 0.0.0.0 ::
✅ 说明:
0.0.0.0= 放行全部IPv4地址,::= 放行全部IPv6地址,空格分隔即可同时生效。
✅ 配置2:关闭保护模式(远程连接必需)
找到原配置行:protected-mode yes
修改为:
conf
protected-mode no
✅ 配置3:设置 Redis 连接密码(安全必备,防未授权访问)
找到注释行:# requirepass foobared
取消注释 + 修改密码(替换为你的高强度密码,建议字母+数字+特殊符号):
conf
requirepass lihaozhe # 示例密码,自行替换
✅ 配置4:确认后台运行(Ubuntu 系统推荐,默认已开启)
核对配置项为以下值,无需修改,确保Redis后台运行:
conf
daemonize yes
步骤3:保存配置 + 重启服务(使配置生效)
bash
# nano编辑器保存快捷键:Ctrl+O → 回车(确认) → Ctrl+X(退出)
# 重启Redis服务,加载新配置
sudo systemctl restart redis-server
# 再次校验服务状态,确保重启成功
sudo systemctl status redis-server
📌 七、防火墙放行 Redis 端口(远程访问必需,Ubuntu24.04专用)
Ubuntu 24.04 默认启用 ufw 防火墙,Redis 默认端口为 6379 ,必须放行端口才能实现远程连接,同时兼容 IPv4+IPv6:
bash
# 永久放行6379/TCP端口(双协议兼容)
sudo ufw allow 6379/tcp
# 重载防火墙规则,立即生效
sudo ufw reload
# 查看放行状态(确认6379/tcp ALLOW Anywhere 即成功)
sudo ufw status
☁️ 补充:云服务器(阿里云/腾讯云/华为云)用户,需在 控制台安全组 中放行 6379/TCP 端口,源地址填写
0.0.0.0/0(IPv4)和::/0(IPv6)。
📌 八、Redis 8.x 常用运维命令(Ubuntu24.04 高频使用)
整理日常管理必备命令,覆盖「启停、自启、日志排查」,直接复制执行即可:
bash
# 启动Redis服务
sudo systemctl start redis-server
# 停止Redis服务
sudo systemctl stop redis-server
# 重启Redis服务(配置修改后必用)
sudo systemctl restart redis-server
# 查看Redis实时运行状态
sudo systemctl status redis-server
# 设置Redis开机自启(推荐,服务器重启自动恢复服务)
sudo systemctl enable redis-server
# 关闭Redis开机自启
sudo systemctl disable redis-server
# 实时查看Redis运行日志(排查启动失败/报错必备)
sudo journalctl -u redis-server -f
📌 九、常见问题排查(专属Redis8.x + Ubuntu24.04,解决90%坑)
❌ 问题1:安装后版本不是8.x,显示6.x/7.x?
✅ 解决方案:重新执行「第二步 清理旧版本」命令,再执行 sudo apt update && sudo apt install -y redis-server 重装即可。
❌ 问题2:远程连接提示「Connection refused/超时」?
✅ 按顺序排查4个关键点(必中):
- 配置文件已修改
bind 0.0.0.0 ::+protected-mode no,且已重启服务; - Ubuntu防火墙
ufw已放行6379端口(执行ufw status核对); - 云服务器控制台「安全组」已放行6379端口;
- Redis服务处于正常运行状态(
sudo systemctl status redis-server)。
❌ 问题3:redis-cli连接后执行命令提示「NOAUTH Authentication required」?
✅ 解决方案:连接时指定密码,命令:redis-cli -a 你的Redis密码;或进入客户端后执行 auth 你的Redis密码。
❌ 问题4:Redis服务重启失败,提示「端口被占用」?
✅ 解决方案:查看6379端口占用进程,杀死后重启:
bash
# 查找占用6379端口的进程PID
sudo lsof -i :6379
# 杀死占用进程(替换为上一步查到的PID)
sudo kill -9 进程PID
# 重启Redis服务
sudo systemctl restart redis-server