Redis 数据持久化
Redis 一般用来做缓存服务,有时如果需要将数据持久化,目前也提供两种方式来持久化Redis数据。
持久化的优点:
服务挂掉后能从持久化的文件中快速恢复
缺点:
会有性能上的损失
RDB
从Redis主进程fork一个子进程来完成同步,Redis会定期保存数据快照到一个rbd文件中,并在启动时自动加载rdb文件。
save [seconds] [changes]
在seconds秒内如果发生[changes]次数据修改,则进行一次RDB快照保存。
对主进程性能影响小,数据恢复快;但是是定期生成,易造成数据丢失。
AOF
redis会将每一个请求都记录在一个日志文件里,重启时会将AOF文件记录的所有写操作顺序执行一遍。
appendonly yes 来开启。
appendfsync no : 不进行fsync,you OS决定什么时候写AOF文件。
appendfsync alwasys : 每一条进行一次fsync操作。
appendfsync everysec :每秒一次。
安全,不易造成数据丢失,性能消耗高。