Redis持久化
一、redis为什么要做持久化?
因为,redis本身运行时数据保存在内存中,如果不进行持久化,那么在redis出现非正常原因宕机或者关闭redis的进程或者关闭计算机后数据肯定被会操作系统从内存中清掉。当然,redis本身默认采用了一种持久化方式,即RDB (Redis DataBase),可以在redis的目录中找到dump.rdb文件,这就是使用RDB方式做持久化后生成的数据文件。
二、redis的两种持久化机制
1、rdb:在指定的时间间隔内,将内存中的数据集快照写入磁盘
在配置文件中搜索save,找到修改快照写入磁盘的地方
优点:性能最大化,如果数据集很大,RDB启动效率会更高
缺点:数据安全性较差。如果未到设置的数据变化次数,重启服务器将导致部分数据丢失
2、aof:以日志的形式记录服务器所处理的每一个写、删除操作,查询操作不会被记录
在配置文件中搜索appendonly
2.1 启用aof:将appendonly no改成appendonly yes
2.2 修改aof的文件名:将appendfilename后的文件名修改成一个便于理解的名称
持久化机制:
优点:数据安全性高
缺点:对于相同数量的数据集而言,AOF通常要大于RDB文件。数据恢复慢