Redis持久化

目录

1. RDB快照模式

2. AOF持久化


 

什么是持久化: 把内存中的数据保存到磁盘的过程。 防止数据丢失。

redis持久化的方式:

①:RDB 快照模式: 每个一段时间对redis内存中的数据进行拍照存储。

②: AOF 日志追加模式:把每个写命令通过write函数追加到日志文件中。

1. RDB快照模式

每隔一段时间对redis内存中的数据进行拍照存储。它是redis默认的持久化方式。

*优点: 数据恢复速度快。

*缺点: 可能会出现丢失最后一段时间的数据,数据完整性比较差。

 RDB持久化方式的触发机制有两种方式:

① 手动触发

        save或bgsave命令:----持久化到磁盘中并且名字叫dump.rdb

        save和bgsave的区别:

save

该命令会阻塞当前Redis服务器,执行save命令期间,Redis不能处理其他命令,直到RDB过程完成为止。
执行完成后如果存在老的RDB文件,就会用新的替代掉旧的。我们的客户端可能都是几万或者是几十万,这种方式显然不可取。

 bgsave:

执行该命令时,Redis会在后台异步进行快照操作,快照同时还可以响应客户端请求。具体流程如下:

 ② 自动触发

修改redis的配置文件【底层使用的还是bgsave】

2. AOF持久化

把每个写命令通过write函数追加到日志文件中。当redis启动时会读取日志文件中的命令,并把这些命令由上到下执行一遍。

优点: 数据完整性好。

缺点: 数据恢复慢。

默认redis没有开启aof模式。如果需要开启需要修改配置文件 redis.conf

# 需要改为yes  开启aof模式
appendonly yes

# 默认aof的日志文件名为appendonly.aof
appendfilename "appendonly.aof"

# 默认aof文件存放的目录名
appenddirname "appendonlydir"

# 触发的机制。always一直触发  everysec:每秒触发 no:如果开启aof那么就不能设置为no
appendfsync always
#appendfsync everysec
# appendfsync no

查看

答疑解惑:如果rdb和aof都使用,当服务器重启时会加载哪个文件?

 先加载AOF的文件【它以数据完整性为主】。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值