redis为什么要进行持久化
因为redis是基于内存的,数据全部存在内存里,当redis因为特殊原因宕发生机或者redis进程被关闭,电脑关机后,redis中的数据也会随之被清理
redis如何进行持久化
都是操作redis配置文件
RDB方式(默认方式)
按一定的时间间隔进行持久化
缺点:可能回遗漏某个时间段的数据
例子: save 10 1
AOF方式
按操作的命令进行持久化
缺点呢:操作时间较长,但是AOF比RDB数据损失小
例子:appendonly yes
#appendfsync always
appendfsync everysec
#appendfsync no
配置含义:
always: 每次操作都会立即写入aof文件中
everysec: 每秒持久化一次(默认配置)
no: 不主动进行同步操作,默认30s一次
当然always一定是效率最低的,个人认为everysec就够用了,数据安全性能又高。Redis也允许我们同时使用两种方式,再重启redis后会从AOF中恢复数据,因为AOF比RDB数据损失小