Redis的持久化策略

时间:2021-12-26 17:29:09

Redis的持久化策略

  

  Redis的持久化策略主要有两种,下面主要对每种策略的特点及应用简要总结。

○ RDB
  § RDB:是redis的默认持久化机制。相当于照快照。保存的不是数据,保存的是一种状态。20G数据----> 几kb快照
  § 优点:快照保存数据速度极快,还原数据速度极快;适用于灾难备份,复制其中的dump.rdb文件即可。
  § 缺点:小内存机器不适合使用。RDB机制符合要求就会照快照。(随时随地启动),会占用一部分系统资源(突然的,就是在将大文件压缩过程中,会突然占用一部分内存),很可能内存不足直接宕机。(宕机后,服务器会关闭,非正常关闭)
    □ 服务器正常关闭时 照快照
    □ Key满足一定条件,照快照
      save 900 1 #每900秒(15分钟)至少有1个key发生变化,则dump内存快照。
      save 300 10 #每300秒(5分钟)至少有10个key发生变化,则dump内存快照
      save 60 10000 #每60秒(1分钟)至少有10000个key发生变化,则dump内存快照
  § 适用于:内存比较充裕的计算机。


○ AOF
  § 使用日志功能保存数据操作。默认AOF机制关闭的。
  § 只会保存导致key变化的语句,不会记数据,只记语句,当进行恢复时,将语句重新执行一遍即可。
  § AOF配置:
    □ always #每次有数据修改发生时都会写入AOF文件
    □ everysec #每秒钟同步一次,该策略为AOF的缺省策略
    □ no #从不同步。高效但是数据不会被持久化
  § 优点:持续性占用极少量的内存资源,几kb的空间
  § 缺点:日志文件会特别大,不适用于灾难恢复;恢复效率远远低于RDB
  § 适用于:内存比较小的计算机