redis 持久化策略、aof配置、测试、手动持久化、aof文件体积优化

redis持久化策略

1、数据文件.rdb

2、更新日志.aof


设置aof

1、命令方式
config set appendonly no
config rewrite
2、配置文件方式 


redis持久化机制

当满足持久化策略时,做rdb的持久化

当不满足持久化策略时,以aof日志的方式保存下来。当服务器重启时,加载rdb和aof做并集处理。aof效率高,因为它只是文本写入;rdb还有其它的操作。


测试

exit是客户端自己退出;shutdown是退出redis服务,不过使用shutdown退出会把数据保存到rdb。
在虚拟机直接关闭该计算机,或者使用 debug segfault 关闭redis,才可以测试aof。


手动持久化

save | bgsave 保存到磁盘文件dump.rdb,bgsave是后台保存,不会阻塞当前线程
save 由主进程完成,bgsave由另外一个进程完成


aof文件体积优化

BgRewriteAof 异步执行aof文件重写操作,会创建一个当前aof文件的体积优化版本

[root@localhost redis]# ls -lh appendonly.aof
-rw-r--r--. 1 root root 0 8月 30 01:01 appendonly.aof

127.0.0.1:6379> set name zhangrunwei
OK

[root@localhost redis]# ls -lh appendonly.aof
-rw-r--r--. 1 root root 64 8月 30 01:03 appendonly.aof

127.0.0.1:6379> set age 18
OK

[root@localhost redis]# ls -lh appendonly.aof
-rw-r--r--. 1 root root 94 8月 30 01:03 appendonly.aof

127.0.0.1:6379> flushdb
OK

[root@localhost redis]# ls -lh appendonly.aof
-rw-r--r--. 1 root root 111 8月 30 01:04 appendonly.aof

127.0.0.1:6379> BgRewriteAof
Background append only file rewriting started

[root@localhost redis]# ls -lh appendonly.aof
-rw-r--r--. 1 root root 0 8月 30 01:05 appendonly.aof

posted @ 2018-08-30 15:25  zhuangrunwei  阅读(700)  评论(0编辑  收藏  举报