Redis 学习笔记5-持久化

来源:互联网 发布:局域网数据备份 编辑:程序博客网 时间:2024/06/10 20:59


reids持久化就是把内存中的数据保存到磁盘中,防止重启服务器的时候数据丢失。redis持久化方式有两种:快照方式和aof方式。快照方式是默认持久化方式,aof持久化可以做到不会丢失最后一次修改的数据。

1 快照持久化

快照持久化,就是把内存中的数据以快照的形式保存在一个二进制文件中(dump.rdb),可以在配置文件中修改持久化时机,可以配置多少秒,多少个value被修改时候进行持久化。

  可以使用save命令,立即快照持久化,这样会阻塞客户端请求,不推荐使用。

因为redis是讲内存中的全部数据进行快照,不是只进行快照脏数据,因此当内存中数据非常多的时候,进行快照持久化时redis性能会降低。

如果redis服务器重启,快照方式的持久化有可能丢失最后一次快照之后修改的数据。如果不允许丢失数据,应该使用aof持久化。

2 aof持久化

  aof持久化是redis将每次收到的写命令,保存到文件中,redis重启后会执行文件中的命令回复整个数据库的数据。

  可以通过配置文件配置aof持久化的时机,默认是每秒持久化一次。

aof持久化也存在一个问题,就是保存命令的持久化文件会越来越大,可以使用bgrewriteaof命令重写aof文件。重写aof文件是讲内存中的数据对应的写命令保存在新的aof文件中。

0 0