将需要持久化的数据存储到硬盘中
一.持久化的两种方式
1.RDB方式
默认方式,指定间隔时间,执行一次写入磁盘操作
2.AOF方式
以日志方式存储Reids的每一步操作,在Redis启动时,会读取该文件重新构建数据库。
3.无持久化
不持久化,只作为缓存使用
4.同时使用RDB和AOF
二.RDB方式持久化
1.优点
1.只有一个文件,方便备份
2.单独子进程执行持久化io操作,保证Redis的性能
2.缺点
1.不能保证持久数据高完整性,服务器随时可能在间隔时间之间崩溃
3.数据量较大影响Redis性能。。。
3.配置:默认已有此配置
编辑redis.conf大概100多行
save 900 1(在900秒之内,如果有最少1个KEY发生变化,写入一次硬盘)
save 300 10(在300 秒之内,如果有最少10个KEY发生变化,写入一次硬盘)
save 60 10000(在60 秒之内,如果有最少10000个KEY发生变化,写入一次硬盘)
...
继续往下编辑
dbfilename dump.rdb(持久化保存的文件名)
继续往下编辑
dir ./(文件所在路径,./表示相对当前路径)
三.AOF持久化
1.同步方式
1.每秒同步
2.每修改同步
3.不同步
2.优点
1.保证了持久化数据的完整性。
2.使用append方式写入日志,保证之前数据安全性。
3.格式清晰,保存了所有redis的操作命令
4.可以在启动Redis前编辑日志文件中的命令以便恢复只想恢复的数据
3.缺点
1.记录数据较多
2.效率过低
4.配置
编辑redis.conf
appendonly no||yes(可以看到此配置默认关闭状态,改成yes打开)
继续往下编辑
appendfilename "appendonly.aof"(默认文件名,状态为yes时会自动生成)
继续往下编辑
同步策略
# appendfsync always(每修改同步写入日志)
appendfsync everysec(每秒写入)
# appendfsync no(不同步写入)
三.编辑完redis.conf后重启Redis即能生效