Redis——redis的rdb和aof持久化

修改配置文件redis.conf

SNAPSHOTTING(rdb)

save 900 1 在900s内至少有1条数据变化就保存到文件。
save 300 10 在300s内至少有10条数据变化就保存到文件。
save 60 10000 在60s内至少有10000条数据变化就保存到文件。

stop-writes-on-bgsave-error yes 如果最后一次rdb失败redis将停止接受写入,如果后台保存进程再次开始工作redis会自动接受写入。

rdbcompression yes 保存rdb时使用lzf压缩算法压缩。

rdbchecksum yes 在文件最后添加CRC64校验,使得文件更抗损坏,但是保存和读取rdb文件时有10%性能消耗。

dbfilename dump.rdb 保存的rdb文件名字。

dir ./ 保存的RDB文件目录,默认跟conf文件同目录,aof也用该目录,并且必须是个文件夹。

手动RDB:

./redis-cli执行save或者bgsave,bgsave不会长时间阻塞。

rdb文件放到redis安装目录启动redis即可加载,安装目录查询:redis-cli 输入config get dir。

APPEND ONLY MODE(aof)

appendonly no 是否开启aof持久化,如果rdb和aof同时开启则优先使用aof。

appendfilename "appendonly.aof" 文件名。

# appendfsync always 每次“写”操作都aof ,更安全。
appendfsync everysec 每秒aof,均衡。(默认)
# appendfsync no redis不自动同步,由系统决定,更快。

no-appendfsync-on-rewrite no 使用always或者everysec时,可能会有阻塞发生,设置为yes时,如果后台有别的redis操作,会使用类似appendfsync no的机制。

auto-aof-rewrite-percentage 100 设置重写百分比,如果日志增长达到该百分比就会重写,redis会记住最后一次重写大小(如果重启时没有重写,则使用启动时的aof大小),设置为0禁用重写。
auto-aof-rewrite-min-size 64mb 重写aof文件的最小大小。

aof-load-truncated yes 启动redis时对于损坏的aof文件的处理(系统崩溃可能导致aof文件结尾部分异常,但redis崩溃或终止不会损坏aof),设置为yes,启动时丢弃aof末尾的损坏数据并加载,同时通知给用户,设置为no,启动时发现aof损坏启动失败,需要先redis-check-aof --fix appendonly.aof修复才能启动redis。(注:如果aof文件中间损坏则启动redis异常)

aof-use-rdb-preamble yes 混合持久化,前部分是rdb格式,后部分是aof格式,结合两个持久化优点,只是可读性差,redis4.0版本之前不支持。

 

 

参考:

https://www.cnblogs.com/ysocean/p/9114268.html

https://www.cnblogs.com/wdliu/p/9377278.html

你可能感兴趣的:(redis)