redis持久化之rdb

Posted 巴八灵

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了redis持久化之rdb相关的知识,希望对你有一定的参考价值。

?
持久化:redis是将数据存储在内存中的,持久化是将数据断电后存储在硬盘中,redis的rdb持久化是将数据存储到一个以rdb结尾的文件中
一些其它数据库的持久化处理:
mysql:mysql数据库是通知操作时生成操作日志,然后通过日志来恢复数据
memcached:可以通过主从复制来是现在持久化

redis实现rdb持久化一句话理解:每隔N分钟写入了N个key,redis会从内存中拿到数据生成rdb文件(数据集的快照),然后压缩放到备份的文件目录下。最后服务器再次启动时
通过重新执行这些命令来还原数据集。
redis之rdb的持久化操作步骤:主要是修改redis.conf配置文件
1.save设置
save 900 1 ? 如果900秒后至少写入一个key才会写入到rdb文件
save 300 10 如果300秒后至少写入10个key才会写入到rdb文件
save 60 10000 如果60秒后至少写入10000个key才会写入到rdb文件
2.stop-writes-on-bgsave-error yes
后台存储错误停止写
3.rdbcompression yes
使用lzf压缩rdb文件
4.rdbchecksum yes
存储和加载rdb文件是校验
5.dbfilename dump.rdb
设置rdb文件的名称
6.dir ./
设置rdb文件生成的目录

rdb的优点:rdb持久化可以生成非常紧凑方便保存的文件,可以随时快速的恢复数据,非常适合灾难恢复。
?rdb缺点:虽然rdb持久化可以很好的保存数据集,但是设置的时间段有可能会与服务器宕机的时间点冲突了,导致数据会有一部分丢失不完整。

以上是关于redis持久化之rdb的主要内容,如果未能解决你的问题,请参考以下文章

redis持久化

Redis持久化-RDB

memcache and redis 的区别

redis 之redis持久化rdb与aof

细说Redis之 Redis的持久化

010 redis持久化之RDB