美文网首页
redis设置AOF方式持久化

redis设置AOF方式持久化

作者: php转go | 来源:发表于2022-01-26 16:26 被阅读0次

redis是一个内存数据库,数据保存在内存中,但是我们都知道内存的数据变化是很快的,也容易发生丢失。
Redis提供了持久化的机制,分别是RDB(Redis DataBase)和AOF(Append Only File),默认方式是RDB。

开始AOF方式持久化

找到redis配置文件,找到 appendonly ,默认是no,设置为yes

#设置为yes
appendonly yes
#存储的文件
appendfilename "appendonly.aof" 

设置触发机制

AOF三种触发机制,always,everysec,no,默认是everysec

#同步持久化 每次发生数据变更会被立即记录到磁盘 性能较差但数据完整性比较好
# appendfsync always
#异步每秒记录一次,如果一秒内宕机,有数据丢失
appendfsync everysec
#从不同步
# appendfsync no

同时在执行bgrewriteaof操作和主进程写aof文件的操作,两者都会操作磁盘,而bgrewriteaof往往会涉及大量磁盘操作,这样就会造成主进程在写aof文件的时候出现阻塞的情形
Redis在每次AOF rewrite时,会记录完成rewrite后的AOF日志大小,当AOF日志大小在该基础上增长了100%后,自动进行AOF rewritev
auto-aof-rewrite-min-size最开始的AoF文件必须要触发这个文件才触发,后面的每次重写就不会根据这个变量了。该变量仅初始化启动Redis有效。

#如果有延迟问题,设置为“yes”。否则no
#从耐用性的角度来看,“no”是最安全的选择。
no-appendfsync-on-rewrite no
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb

相关文章

网友评论

      本文标题:redis设置AOF方式持久化

      本文链接:https://www.haomeiwen.com/subject/lakrhltx.html