首页主机资讯Redis在CentOS上的持久化存储方案

Redis在CentOS上的持久化存储方案

时间2025-12-04 02:23:03发布访客分类主机资讯浏览255
导读:Redis在CentOS上的持久化存储方案 一 机制与选型 RDB(Redis Database):在指定时间间隔对内存数据做时间点快照,文件紧凑、恢复快,但存在最后一次快照后的数据丢失风险。触发方式包括手动的 SAVE(阻塞)/BGSA...

Redis在CentOS上的持久化存储方案

一 机制与选型

  • RDB(Redis Database):在指定时间间隔对内存数据做时间点快照,文件紧凑、恢复快,但存在最后一次快照后的数据丢失风险。触发方式包括手动的 SAVE(阻塞)/BGSAVE(后台 fork 子进程) 与配置文件中的自动策略。RDB 适合备份与快速恢复场景。
  • AOF(Append Only File):记录每一条写命令,重启时重放命令恢复,数据安全性更高;文件会增长,需要AOF 重写瘦身。同步策略常用 appendfsync everysec(每秒落盘,性能与持久化的折中)。
  • 混合持久化(4.0+):AOF 文件头部写入RDB 快照,后续追加 AOF 命令,兼顾恢复速度更少数据丢失
  • 如何选择:容忍分钟级丢失选 RDB;强一致与更少丢失选 AOF;通用生产建议同时开启 RDB+AOF或启用混合持久化,重启时优先载入 AOF 恢复数据。

二 安装与目录准备

  • 安装 Redis(CentOS 常见方式):
    • 安装 EPEL 并安装 Redis:sudo yum install -y epel-release & & sudo yum install -y redis
    • 启动与自启:sudo systemctl start redis & & sudo systemctl enable redis
  • 数据目录与权限(示例采用 /var/lib/redis):
    • 创建目录并授权:sudo mkdir -p /var/lib/redis & & sudo chown redis:redis /var/lib/redis
  • 配置文件位置:常见为 /etc/redis.conf(部分安装包可能是 /etc/redis/redis.conf),下文以此路径为例。

三 配置步骤

  • 启用与调整 RDB(示例为默认策略)
    • 编辑配置文件:sudo vi /etc/redis.conf
    • 关键参数:
      • save 900 1save 300 10save 60 10000(按“N 秒内有 M 次改动”自动快照)
      • dbfilename dump.rdb(快照文件名)
      • dir /var/lib/redis(快照与 AOF 的统一目录)
    • 如需临时禁用 RDB:save ""
  • 启用与调整 AOF
    • 开启 AOF:appendonly yes
    • 关键参数:
      • appendfilename "appendonly.aof"
      • appendfsync everysec(推荐折中策略)
      • 自动重写:auto-aof-rewrite-percentage 100auto-aof-rewrite-min-size 64mb
      • 异常截断容忍:aof-load-truncated yes(宕机导致 AOF 尾部不完整时仍尽量加载可用数据)
  • 可选 混合持久化(4.0+)
    • 开启:aof-use-rdb-preamble yes(重启优先载入 AOF,头部为 RDB,加速恢复)
  • 使配置生效
    • 重启:sudo systemctl restart redis
      说明:上述参数均可在运行时用 CONFIG GET/SET 查询或临时调整,但建议将最终值写入配置文件以便持久化。

四 验证与运维

  • 配置与状态校验
    • 查看关键配置:redis-cli config get saveredis-cli config get appendonlyredis-cli config get dir
    • 持久化状态:redis-cli info persistence(关注 rdb_last_save_time、aof_enabled、aof_rewrite_in_progress 等)
  • 功能与恢复测试
    • 写入验证:redis-cli set testkey "Hello, Redis!"
    • 重启验证:sudo systemctl restart redisredis-cli get testkey 应返回原值
    • 异常场景:模拟崩溃后重启,若启用 AOF,应能从 AOF 恢复最近数据(RDB 快照可能未更新)
  • 备份与监控
    • 定期备份持久化文件:/var/lib/redis/dump.rdb/var/lib/redis/appendonly.aof
    • 监控 AOF 大小与重写:ls -lh /var/lib/redis/appendonly.aofredis-cli info persistence
  • 性能与风险提示
    • 大数据集下 fork 可能带来毫秒级阻塞;AOF 重写会额外占用 I/O 与内存,建议在业务低峰配置重写阈值与监控告警。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Redis在CentOS上的持久化存储方案
本文地址: https://pptw.com/jishu/763077.html
怎样优化CentOS Redis的网络设置 CentOS Redis日志配置解析

游客 回复需填写必要信息