码迷,mamicode.com
首页 > 其他好文 > 详细

Redis 5.0持久性存储配置

时间:2019-07-11 09:36:43      阅读:87      评论:0      收藏:0      [点我收藏+]

标签:com   退出   only   条件   安全   手动   日志   pre   save   

因最近公司业务需要使用redis的持久性存储,笔记一下:

因为redis为内存型数据库,如果进程退出,数据便会丢失,为解决该问题,redis持久性存储提供以下两种方法:

RDB:按指定的时间配置进行数据的存储,默认开启。

AOF:记录每次redis的操作,类似MySQL的binlog日志,redis重启后会优先使用AOF文件进行恢复数据。

1)、RDB配置:

#vim redis.conf

#默认开启如果需要关闭把save ""取消注释即可
#save ""

#900秒(15分钟)至少有1条key变化,其他同理
save 900 1
save 300 10
save 60 10000

#RDB文件名称及存放路径
dbfilename dump.rdb
dir ./

#备份进程出错时,主进程停止接受写入操作,默认yes
stop-writes-on-bgsave-error yes
#是否压缩,会占用部分cpu资源,默认yes
rdbcompression yes

#RDB自动触发策略是否启用,默认为yes
rdb-save-incremental-fsync yes

RDB手动触发和自动触发:
1)自动触发
如上面配置所示,按配置情况触发
2)手动触发
连接redis后使用命令save、bgsave触发
save:会阻塞redis服务器,直到完成持久化
bgsave:会fork一个子进程,由子进程进行持久化。

2)AOF配置:

#vim redis.conf

#是否开启AOF,默认为否
appendonly no

#AOF文件名字及路径,若RDB路径已设置这里可不设置
appendfilename "appendonly.aof"
dir ./

#AOF的3种模式,no(使用系统缓存处理,快)、always(记录全部操作,慢但比较安全)、everysec(每秒同步,折中方案,默认使用)
appendfsync everysec

#重写期间是否同步数据,默认为no
no-appendfsync-on-rewrite no

#自动触发重写的配置
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb

#AOF重写策略是否启用,默认为yes
aof-rewrite-incremental-fsync yes

#加载AOF时,如果报错则会继续但写入log,如果为no则不会继续
aof-load-truncated yes

#Redis5.0有的功能,AOF重写及恢复可以使用RDB文件及AOF文件,速度更快,默认yes
aof-use-rdb-preamble yes

AOF重写
因为AOF为记录每次的操作,会导致实际记录不多但文件过大,所以需要做重写操作
1)AOF自动重写:按配置文件条件自动触发重写
2)AOF手动重写:连接redis,使用命令bgrewriteaof,进行手动重写

Redis 5.0持久性存储配置

标签:com   退出   only   条件   安全   手动   日志   pre   save   

原文地址:https://blog.51cto.com/bilibili/2418979

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!