redis持久化

1.配置aof,并且形成rewrite之前和之后的对比
2.配置rdb,手动命令和后台触发,截图对比持久化之前和之后的数据文件的差异

一.默认开启快照dump
#save "" 不配置rdb
save 900 1					# 900秒1次修改
save 300 10					# 300秒10次修改
save 60 10000					# 60秒1W次修改
rdbcompression yes			# 是否对rdb文件进行压缩
rdbchecksum yes				# 是否对rdb文件进行校验
stop-writes-on-bgsave-error no	# 生成rdb错误是否继续写入,默认不写入
dir /usr/local/redis/data			# rdb保存的目录
dbfilename dump.rdb			# rdb的文件名
  • 1.1 redis启动后会优先读取rdb文件
  • 1.2 save命令会阻塞请求
  • 1.3 bgsave异步保存rdb
二.默认关闭AOF,需手动打开
appendonly yes					# 是否打开aof,默认关闭
appendfilename "appendonly.aof"		# aof文件,保存在dir /usr/local/redis/data
appendfsync everysec				
选项 同步频率
always 每个 Redis 命令都要同步写入硬盘。这样会严重降低 Redis 的性能
everysec 每秒执行一次同步,显式地将多个写命令同步到硬盘
no 让操作系统来决定应该何时进行同步
三.rdb持久化
  • 3.1关闭rdb
save ""
#save 900 1
#save 300 10
#save 60 10000
  • 3.2因为原来修改过,因此存在数据
127.0.0.1:6379> info keyspace
# Keyspace
db0:keys=4,expires=0,avg_ttl=0
db1:keys=1,expires=0,avg_ttl=0
db15:keys=1,expires=0,avg_ttl=0
127.0.0.1:6379> config get dir
1) "dir"
2) "/usr/local/redis/work"
  • 3.3删除rdb文件
rm -rf /usr/local/redis/work/*
  • 3.4开启后没有任何key
127.0.0.1:6379> config get save
1) "save"
2) ""
127.0.0.1:6379> info keyspace
# Keyspace
  • 3.5set一个key并保存重启
27.0.0.1:6379> set k1 v1
OK
127.0.0.1:6379> get k1
"v1"
127.0.0.1:6379> save
OK
127.0.0.1:6379> set k2 v2
OK
127.0.0.1:6379> get k2
"v2"
127.0.0.1:6379> bgsave
Background saving started
# 在dir参数目录/usr/local/redis/work/下保存默认rdb文件dump.rdb
# 重启后key存在,数据在save时被持久化
127.0.0.1:6379> info keyspace
# Keyspace
db0:keys=2,expires=0,avg_ttl=0
四.aof持久化

清空所有keyflushall

  • 4.1打开aof,保持rdb关闭
appendonly yes
appendfilename "appendonly.aof"

127.0.0.1:6379> config get appendonly
1) "appendonly"
2) "yes"
  • 4.2set后直接关闭
127.0.0.1:6379> set k1 v1
OK
127.0.0.1:6379> set k2 v2
OK
127.0.0.1:6379> set k3 v3
OK
127.0.0.1:6379> shutdown
  • 4.3在目录下发现aof文件,重启后key值依然存在
[root@haproxy01 work]# ls
appendonly.aof  redis_3.140.log
127.0.0.1:6379> mget k1 k2 k3
1) "v1"
2) "v2"
3) "v3"
五.持久化读取顺序
  • 5.1 直接读取rdb
  • 5.2 rdb存在先读rdb后读aoff
  • 5.3 rdb不存在则读取aof
  • 5.4 都不存在则以空数据库启动
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Jenvid.yang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值