Redis-10-Redis持久化

14 篇文章 0 订阅

说明

  • Redis-10-Redis持久化
  • 包含不同范围的持久性选项说明、持久化数据备份步骤、数据备份文件损坏修复、相关配置文件
  • 官方文档:https://redis.io/documentation
  • Redis命令参考:http://redisdoc.com/

核心概念

》什么是Redis持久化呢?

  • 简单说就是将Redis数据存入磁盘(好吧这是废话)

》Redis 提供了不同范围的持久性选项:

  • RDB(Redis 数据库):RDB 持久性以指定的时间间隔执行数据集的时间点快照。
    • 该方式数据库文件:dump.rdb
    • Redis定时自动备份数据集快照文件,这个频率可以在配置文件中修改。底层实现使用了Linux的“写时复制技术”。
    • Redis重启以后会将dump.rdb中的数据重新读取出来
    • 缺点:最后一次备份以后到宕机这段时间内的数据是丢失的
  • AOF(Append Only File):AOF 持久化记录服务器接收到的每个写操作,在服务器启动时再次播放,重建原始数据集。命令使用与 Redis 协议本身相同的格式以仅附加方式记录。当日志变得太大时,Redis 能够在后台重写日志。
    • 该方式数据库文件:appendonly.aof
    • 以日志的形式记录每一个写操作(增量保存),只追加文件但不改文件
    • Redis重启以后会将 中的数据重新读取出来
  • 无持久性:如果您愿意,您可以完全禁用持久性,如果您希望您的数据只要服务器正在运行就存在。
  • RDB + AOF:可以在同一个实例中结合 AOF 和 RDB。请注意,在这种情况下,当 Redis 重新启动时,AOF 文件将用于重建原始数据集,因为它保证是最完整的。
    • 也就是说,两者都开启的情况下,以AOF为准

》Redis持久化数据备份步骤

  • 一般都是定时备份数据库持久化文件(dump.rdb或appendonly.aof)

》数据备份文件损坏修复

[admin@192 ~]$ /usr/local/redis/bin/redis-check-rdb ./dump.rdb

[admin@192 ~]$ /usr/local/redis/bin/redis-check-aof ./appendonly.aof

》相关配置文件

  • RDB相关配置项(redis.conf)
    # 数据库持久化存储频率,格式:save <秒> <写操作次数>
    # 比如以下第一条规则:每900秒有至少1次写操作时保存一次,后边的同理
    save 900 1
    save 300 10
    save 60 10000
    
    # 不推荐使用sava,更推荐使用bgsave模式
    
    # 持久化数据库文件名
    dbfilename dump.rdb
    
    # 数据库持久化文件存储路径
    dir ./
    
    # 当Redis无法写入磁盘是是否关闭Redis写操作,推荐yes
    stop-writes-on-bgsave-error yes
    
    # 数据库文件是否进行压缩
    rdbcompression yes
    
    # 检查数据完整性,推荐yes,如果关闭了那么如果有不完整的数据也是无效数据。开启会损耗10%左右性能,希望更高性能可以关闭
    rdbchecksum yes
    
    
  • AOF相关配置项(redis.conf)
    # 是否开启AOF,默认关闭
    appendonly no
    
    # AOF模式数据库文件名
    appendfilename "appendonly.aof"
    
    # AOF同步频率:总是同步、每秒同步、从不主动同步(由操作系统同步)
    # appendfsync always
    appendfsync everysec
    # appendfsync no
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值