工业制造其它Redis

Redis持久化方式?

Redis持久化方式都有哪些?各有什么特点?

参与8

2同行回答

youki2008youki2008系统架构师DDT
Redis持久化有两种方式: rdb(redis database)和aof(append of file) RDB:在指定时间间隔内,将内存中的数据作为一个快照文件(snapshot)写入到磁盘,读取的时候也是直接读取snapshot文件到内存中①持久化过程:redis单独创建(fork)一个进程来持久化,会先将数据写入临时文件中,待上次持久化...显示全部

Redis持久化有两种方式: rdb(redis database)和aof(append of file)

RDB:在指定时间间隔内,将内存中的数据作为一个快照文件(snapshot)写入到磁盘,读取的时候也是直接读取snapshot文件到内存中
①持久化过程:redis单独创建(fork)一个进程来持久化,会先将数据写入临时文件中,待上次持久化结束后,会将该临时文件替换上次持久化文件,比aof高效,但是最后一次数据可能会丢失
②Fork:在linux中,fork()会产生一个跟主进程一样的子进程,出于效率考虑,主进程和子进程会公用一段物理内存,当发生改变的时候,才会把主进程“”写时复制”一份给子进程
③Redis备份的文件:在redis.conf中设置,dbfilename默认为:dump.rdb
④ Rdb保存策略:
900s 1 file change
300s 10file change
60s 10000file change

⑤Rdb的备份:
config get dir 得到备份的文件夹
复制备份文件

⑥Rdb恢复:
关闭redis
将备份文件复制到工作目录下
启动redis,自动加载

AOF : 以日志形式记录每个写操作,启动时通过日志恢复操作
开启AOF:默认不开启,进入redis.conf找到appendonly yes打开
修复AOF:redis-check-aof –fix appendonly.aof
同步频率:每秒记录一次,如果宕机该秒记可能失效
Rewrite:bgrewriteaof 因为日志是追加方式,文件会越来越大,当超过了设置的阈值时,日志文件会压缩,保留仅可以恢复的日志

收起
互联网服务 · 2020-04-26
浏览1096
zftangzftang其它小白一枚
半持久化模式、全持久化模式显示全部

半持久化模式、全持久化模式

收起
互联网服务 · 2020-04-26
浏览980

提问者

wangxq
系统架构师美的
擅长领域: 数据库云计算dubbo

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2020-04-26
  • 关注会员:3 人
  • 问题浏览:2358
  • 最近回答:2020-04-26
  • X社区推广