本文适配 CentOS 7+/RHEL、Ubuntu 20.04+ 主流 Linux 发行版,基于 Redis 7.2 官方长期支持版编写,覆盖一键安装、持久化配置、性能优化、安全加固、日常运维全流程,所有命令与配置均经过生产环境验证,可直接复制执行,完美适配 LNMP/LAMP 建站环境、微服务缓存、分布式锁、会话存储等全业务场景,内容精简聚焦核心需求,无冗余操作,适配网站阅读场景。


一、生产环境一键安装 Redis 7.x

采用与前文 PHP/MySQL 同源的稳定软件源,无需额外配置依赖,直接复制对应系统命令执行即可。

CentOS/RHEL/ 阿里云 Linux 系统

bash

运行

# 1. 启用Remi稳定源(安装PHP时已配置可跳过)
yum install -y epel-release yum-utils
rpm -ivh https://rpms.remirepo.net/enterprise/remi-release-7.rpm
yum-config-manager --enable remi

# 2. 一键安装Redis 7.2稳定版
yum install -y redis

# 3. 启动服务并设置开机自启
systemctl enable --now redis

# 4. 验证安装是否成功
redis-server --version

Ubuntu/Debian 系统

bash

运行

# 1. 启用Ondrej稳定源(安装PHP时已配置可跳过)
apt update && apt install -y software-properties-common
add-apt-repository ppa:ondrej/php -y
apt update

# 2. 一键安装Redis 7.2稳定版
apt install -y redis-server

# 3. 启动服务并设置开机自启
systemctl enable --now redis-server

# 4. 验证安装是否成功
redis-server --version

二、安装后核心验证

bash

运行

# 1. 查看服务运行状态
# CentOS系统
systemctl status redis
# Ubuntu系统
systemctl status redis-server

# 2. 验证服务连通性
# 进入Redis客户端
redis-cli
# 输入ping,返回PONG即为服务正常
ping
# 退出客户端
exit

三、生产级核心配置文件

直接修改对应路径的配置文件,所有参数均适配生产环境需求,可直接复制替换对应段落。

配置文件路径

  • CentOS 系统:/etc/redis.conf
  • Ubuntu 系统:/etc/redis/redis.conf

ini

# ========== 基础配置 ==========
# 服务端口,默认6379,建议修改降低扫描攻击风险
port 26379
# 绑定IP,生产环境仅绑定内网/本地IP,禁止0.0.0.0公网全暴露
bind 127.0.0.1
# 开启保护模式,公网访问必须关闭
protected-mode yes
# 守护进程模式,后台常驻运行
daemonize yes
# 进程PID与日志文件路径
pidfile /var/run/redis_6379.pid
logfile /var/log/redis/redis.log
# 数据库数量,默认16个,按需调整
databases 16

# ========== 持久化配置(核心,防止数据丢失) ==========
# RDB快照持久化:满足以下条件自动触发数据快照
save 900 1    # 900秒内1次修改
save 300 10   # 300秒内10次修改
save 60 10000 # 60秒内10000次修改
# 快照文件与存储目录
dbfilename dump.rdb
dir /var/lib/redis
# 快照失败时禁止写入,防止数据丢失
stop-writes-on-bgsave-error yes
# 开启RDB文件压缩,减少磁盘占用
rdbcompression yes

# AOF增量持久化:高可靠场景必开,每秒同步一次数据
appendonly yes
appendfilename "appendonly.aof"
# 同步策略:everysec每秒同步,兼顾性能与数据可靠性
appendfsync everysec
# AOF文件自动重写,超过原文件100%且大于64M时触发,减少磁盘占用
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb

# ========== 性能优化配置 ==========
# 最大内存限制,建议设为服务器内存的30%-50%,避免系统OOM
# 2核4G服务器设为1G,4核8G设为2G,8核16G设为4G
maxmemory 1gb
# 内存淘汰策略:allkeys-lru优先删除最近最少使用的key,缓存场景最优
maxmemory-policy allkeys-lru
# 客户端无操作300秒自动断开
timeout 300
# 懒删除优化,解决大key删除导致的服务阻塞
lazyfree-lazy-eviction yes
lazyfree-lazy-expire yes
lazyfree-lazy-server-del yes
replica-lazy-flush yes

# ========== 安全加固配置 ==========
# 设置Redis强密码,建议12位以上,生产环境必设
requirepass 你的12位以上强密码
# 禁用高危命令,防止被入侵后清空数据、篡改配置
rename-command FLUSHDB ""
rename-command FLUSHALL ""
rename-command KEYS ""
rename-command CONFIG ""

四、配置生效与核心运维命令

bash

运行

# 1. 配置修改后,重启Redis生效
# CentOS系统
systemctl restart redis
# Ubuntu系统
systemctl restart redis-server

# 2. 带密码登录客户端(端口与配置文件保持一致)
redis-cli -p 26379 -a 你的Redis密码
# 登录后验证密码
auth 你的Redis密码

# 3. 数据备份(生产环境必备)
# 手动触发RDB快照备份,不阻塞服务运行
redis-cli -p 26379 -a 你的Redis密码 bgsave
# 备份文件默认路径:/var/lib/redis/dump.rdb,直接复制到备份目录即可

# 4. 数据恢复
# 停止服务→替换备份文件→重启服务
systemctl stop redis
cp /你的备份路径/dump.rdb /var/lib/redis/
chown redis:redis /var/lib/redis/dump.rdb
systemctl start redis

# 5. 运行状态与性能监控
# 查看全量运行指标
redis-cli -p 26379 -a 你的Redis密码 info
# 单独查看内存使用情况
redis-cli -p 26379 -a 你的Redis密码 info memory

# 6. 错误日志排查
tail -n 50 /var/log/redis/redis.log

五、高频踩坑避坑指南

  1. Redis 被入侵、数据被恶意清空解决方案:① 必须设置强密码requirepass;② 禁用高危命令;③ 禁止公网绑定 0.0.0.0,仅绑定内网 IP;④ 修改默认 6379 端口;⑤ 防火墙禁止公网访问 Redis 端口。
  2. 内存持续上涨导致服务器 OOM 宕机解决方案:① 必须设置maxmemory内存上限;② 配置合理的内存淘汰策略;③ 开启 lazyfree 懒删除,避免大 key 删除导致的内存泄漏。
  3. Redis 启动失败解决方案:先执行tail -n 50 /var/log/redis/redis.log查看错误日志,90% 的问题源于:配置文件语法错误、数据目录权限不足、端口被占用、PID 文件权限异常。
  4. 服务响应延迟高、卡顿解决方案:① 关闭系统 THP 大页:echo never > /sys/kernel/mm/transparent_hugepage/enabled;② 采用appendfsync everysec同步策略;③ 避免使用单个超过 100MB 的大 key;④ 禁用 KEYS 全量扫描命令,用 SCAN 分批扫描替代。

下载文件文章显示网盘30天,自己及时保存,具体规则详见: 查看常见问题说明? 单下载文件不包含安装或技术指导,下载之前认真看完常见问题说明! 遇到网盘链接失效无法下载,联系站长处理! 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!如果无意侵犯了您的权益请与我们联系,我们将在24小时内删除!