redis持久化配置

redis有两种持久化方式:RDB和AOF。

1. RDB配置方式

默认情况下,是快照RDB的持久化方式,将内存中的数据以快照的方式写入二进制文件中,默认的文件名是dump.rdb
在这里插入图片描述
redis.conf默认配置:

save 900 1
save 300 10
save 60 10000

配置含义:

900秒内,如果超过1个key被修改,则发起快照保存

300秒内,如果超过10个key被修改,则发起快照保存

60秒内,如果1万个key被修改,则发起快照保存
---- 可以自己修改成合适的数值

2. AOF 配置方式

2.1 redis.conf默认配置:

appendonly no

配置文件中的appendonly修改为yes,开启AOF持久化。开启后,启动redis服务端,发现多了一个appendonly.aof文件
在这里插入图片描述

使用AOF做持久化,每一个命令以 Redis 协议的格式来保存,新命令会被追加到文件的末尾。 Redis 还可以在后台对 AOF文件进行重写,使得AOF文件的体积不会超出保存数据集状态所需的实际大小。实际上,AOF持久化并不会立即将命令写入到硬盘文件中,而是写入到硬盘缓存,在接下来的策略中,配置多久来从硬盘缓存写入到硬盘文件。所以在一定程度一定条件下,还是会有数据丢失,不过你可以大大减少数据损失

2.2 AOF持久化策略

# appendfsync always    每次操作都会立即写入aof文件中
appendfsync everysec	每秒持久化一次(默认配置)
# appendfsync no		不主动进行同步操作,默认30s一次

当然always一定是效率最低的,个人认为everysec就够用了,数据安全性能又高。Redis也允许我们同时使用两种方式,再重启redis后会从AOF中恢复数据,因为AOF比RDB数据损失小

你可能感兴趣的:(redis,redis,缓存,数据库,数据持久化)