博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Redis入门到精通-Redis持久化机制
阅读量:5807 次
发布时间:2019-06-18

本文共 1190 字,大约阅读时间需要 3 分钟。

hot3.png

持久化机制

​ Redis是支持持久化的内存数据库,也就是说redis需要经常将内存中的数据同步到硬盘来保证持久化。redis持久化有两种方式

3.2.1 snapshotting 快照(rdb)

​ 默认方式,将内存中以快照的方式写入到二进制文件中,默认为dump.rdb,可以通过配置设置自动做快照持久化的方式。我们可以配置redis在n秒内如果m个key修改,就自动做快照。

​ snapshotting 设置:redis.conf(本文中的6379.conf)

​ save 900 1 #900秒内,超过1个key被修改,则发起快照保存

​ save 300 10 #300秒内,超过10个key被修改,则发起快照保存

​ save 60 10000 #60秒内,超过10000个key被修改,则发起快照保存

3.2.2 append-only file(aof)

​ 类似于mysql日志,由于快照方式是在一定时间间隔做一次,所以可能发生redis意外宕机的情况就会丢失最后一次快照后的所有被修改的数据,aof比快照方式有更好的持久化型,是由于redis在使用aof是,redis会将每一个收到的写命令都通过write函数追加到命令中,在redis重新启动时会重新执行文件中保存的写命令在内存中重建这个数据库的内容,这个文件在redis3.2/bin目录下,appendonly.aof。aof不是立即写到硬盘上,可以通过配置文件修改强制写到硬盘中。

​ aof设置:redis.conf(本文中的6379.conf)

​ appendonly yes //启动aof持久化 ,持久化有三种方式:

​ #appendfsync always //收到写命令就立即写入到磁盘,效率最慢,但是保证完整的持久化(最常用)

​ #appendfsync everysec //每秒写一次硬盘,在性能和持久化方面做了很好的这种

​ #appendfsync no //完全依赖os,性能最好,持久化没保证。

修改6379.confappendonly yes重启redis发现conf/目录下多了一个appendonly.aof[root@localhost conf]# ll总用量 52-rw-r--r-- 1 root root 41421 10月 21 11:40 6379.conf-rw-r--r-- 1 root root    86 10月 21 11:42 appendonly.aof-rw-r--r-- 1 root root    41 10月 21 11:41 dump.rdb执行set操作观察appendonly.aof的内容。

​ 提示:开启aof后之前的rdb模式就时效了,且之前的数据会被清空。

 

转载于:https://my.oschina.net/u/3712726/blog/1554689

你可能感兴趣的文章
tengine配置监控
查看>>
mysqldump参数详细说明
查看>>
c++ builder 中的 XMLDocument 类详解(13) - 遍历XML文件
查看>>
linux运维基础篇 unit11
查看>>
C++ builder 中的 XMLDocument 类详解(16) – 前一个节点、后一个节点和父节点
查看>>
poj 3101Astronomy(圆周追击+分数最小公倍数)
查看>>
mongodb 持久化
查看>>
sql
查看>>
JavaScript对象模型-执行模型
查看>>
读<jquery 权威指南>[1]-选择器及DOM操作
查看>>
JavaScript总结2
查看>>
TProfiler
查看>>
Oracle之 11gR2 RAC 修改监听器端口号的步骤
查看>>
JDK QUEUE队列
查看>>
Android获取视频音频的时长的方法
查看>>
「镁客·请讲」极限元温正棋:从前端信号处理到语音识别、对话、声纹情绪与合成,要打造智能交互闭环...
查看>>
Linux-(lsof,ifconfig,route)
查看>>
6、PXE安装ESXI6.0
查看>>
Android大神博客收集
查看>>
aix 设置主机信任
查看>>