本文转载自微信公众号《UP技术控》,作者conan5566。转载本文请联系UP技控公众号。RDBRDB是Redis内存到硬盘的快照,用于redis持久化,创建RDB二进制文件,将数据存入内存,持久化放入硬盘。当我们需要这些数据时,开始加载RDB文件。数据将存储在内存中。实际上,RDB是一种以快照方式持久化存储数据的方式,它也可以作为复制介质。触发机制--主要三种方式save同步命令(会阻塞redis)bgsave异步命令(fork)Automatic#Close自动保存配置#save9001#900秒修改一次自动生成RDB文件#save30010#300秒修改10次自动生成RDB文件dbfilenamedump-${port}.rdb#rdb文件名dir/bigdiskpath#Disk,rdb文件保存位置stop-writes-on-bgsave-erroryes#bdsave错误,停止写入rdbcompressionyes#Usecompressionlocationrdbchecksumyes#OpenchecksumAOFRDB问题:耗时性能,阻塞丢失数据AOF运行原理:每执行一条命令,就向AOF添加一条记录。当需要恢复时,直接执行AOFwriteredisAOF三种策略always(fsyncthebuffertotheharddiskforeachcommand)everysec(每秒刷新一次,每秒fsyncbuffer到硬盘)no(跟随操作系统,有操作系统决定,不可控)AOF重写配置AOF重写配置auto-aof-rewrite-min-size#AOF重写需要最小大小auto-aof-rewrite-percentage#AOF文件增长速度aof_current_size#统计当前aoffileSizeaof_base_size#aof上次启动和重写大小的区别总结AOF是全量备份,RDB是增量备份。
