redis所有的数据都存在内存中,从内存同步到硬盘上,这个过程叫做持久化过程。
持久化的两种方式:
rdb持久化方式:在指定的时间间隔写入硬盘
aof持久化方式:以日志的形式记录每一个删除、写操作,服务器重启后重新根据这些操作构建数据库。
两种方式可以同时使用!
RDB方式是Redis默认支持的
优势:只有一个文件,方便压缩转移
劣势:如果宕机,数据损失比较大。 因为它是每一个时间段进行持久化操作的。也就是积攒的数据比较多,一旦懵逼,就彻底懵逼了
配置:
redis.conf配置文件中
持久化的方式
![](https://i-blog.csdnimg.cn/blog_migrate/66d23d9b73d228ea1eda1361044112f1.png)
数据默认保存的文件名,默认是dump.rdb
![](https://i-blog.csdnimg.cn/blog_migrate/62618fbf6338f4d325b1dbe285195cb6.png)
保存数据的文件存放位置:
![](https://i-blog.csdnimg.cn/blog_migrate/168b6c59589319705c8fb858979c638c.png)
备份和恢复:
平时我们可以定期把rdb文件备份到指定地方 需要恢复的时候 直接把rdb复制到redis下之后重启服务即可;
AOF持久化方式:以日志形式记录每一个操作
优势:安全性相对RDB方式高很多;
劣势:效率相对RDB方式低很多;
配置:
redis.conf配置文件中
把no改为yes
appendonly.aof为数据保存的默认文件名
![](https://i-blog.csdnimg.cn/blog_migrate/2fa7f8635af1a515852be29e9d5b54bf.png)
三种同步策略:
always 是只要发生修改,立即同步(安全性最高)
everysec 每秒同步一次
no 不同步
![](https://i-blog.csdnimg.cn/blog_migrate/c1e78f1bcbb94929833cbdb30baae1cf.png)
备份和恢复:
平时我们可以定期把aof文件备份到指定地方 需要恢复的时候 直接把aof复制到redis下之后重启服务即可;