Redis的持久化机制(1)

RDB,即Redis DataBase的简称。RDB是Redis默认的持久化机制

RDB持久化文件,速度比较快,而且存储的是一个二进制的文件,传输起来很方便

在指定的时间间隔内,将内存中的数据集的快照写入磁盘。默认保存在/usr/local/bin目录下的dump.rdb文件中

RDB持久化的时机:

save 900 1 :在900秒内,有1个key改变了,就执行RDB持久化。

save 300 10 :在300秒内,有10 个key改变了,就执行RDB持久化。

save 60 10000 :在60秒内,有10000个key改变了,就执行RDB持久化。

默认的自动备份不利于测试,所以我们需要修改一下: vim /opt/redis-5.0.4/redis.conf

将219行的默认300秒改为60秒 

如果只想用Redis的缓存功能,不需要持久化自动备份,那么就可以注释掉所有的 save 行来停用保存功能。然后添加 save "" 来实现停止持久化备份的功能。

改完配置文件后重新启动redis:  redis-server /opt/redis-5.0.4/redis.conf

运行redis:  /usr/local/bin/redis-cli

随便设置10个键然后退出 : shutdown   回车后跟    eixt 退出

退出后查询/usr/local/bin目录下多了一个 dump.rdb文件: ls /usr/local/bin

此时我们将这个文件复制一份: cp dump.rdb dump_copy.rdb

然后将原来的缓存文件删除: rm -rf dump.rdb

重新登录redis查看数据:

 

可以看到我们刚刚存储的数据都不存在了,继续退出

将刚刚拷贝的文件改名字: mv dump_copy.rdb dump.rdb

重新启动Redis服务,登录Redis就可以看到我们的数据都恢复了

手动备份 save

RDB的优势和劣势:

优势:适合大规模数据恢复,对数据完整性和一致性要求不高。

劣势:内存中数据在一定间隔后备份一次,当出现意外宕机情况,就会失去最后一次快照的所有修改

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值