今天来了解下Redis的持久化。Redis提供了两种持久化方式:RDB和AOF。
- RDB:能够在指定的时间间隔能对你的数据进行快照存储
- AOF:记录每次对服务器写的操作,当服务器重启的时候会重新执行这些命令来恢复原始的数据,AOF命令以redis协议追加保存每次写的操作到文件末尾。
RDB:
我们先来看看RDB持久化方式。RDB是默认开启的。有关RDB的默认配置,我们打开文件reids.conf(windows系统是redis.windows.conf),其中相关的配置主要有如下几项:
save 900 1
save 300 10
save 60 10000
stop-writes-on-bgsave-error yes
rdbcompression yes
rdbchecksum yes
dbfilename dump.rdb
dir ./
- 前面三个save选项,表示备份的频率。第一个是900秒内至少有1个键被更改,则进行一次备份;第二个是300秒内至少有10个键被更改,则进行一次备份;第三个是60秒内至少有10000个键被更改,则进行一次备份。
- stop-writes-on-bgsave-error选项,是在备份出错后,是否继续执行写命令,默认配置为yes。
- rdbcompression选项,表示是否对备份文件进行压缩,默认值为yes。
- rdbchecksum选项,是在存储快照后,我们还可以让redis使用CRC64算法来进行数据校验,默认值为yes。
- dbfilename选项,保存备份文件的名称,默认为dump.rdb。
- dir选项,为保存备份文件的路径,默认在用户的根目录下。
接下来举个简单的例子,看看rdb快照备份的效果:
- 先找到dump.rdb文件,手动删除,我电脑是win7,目录在C:\Users\Administrator
- 然后启动redis,随便添加点数据,比如新增两个key:key1、key2,然后使用SH