持久化简介
什么是持久化
利用永久性存储介质将数据进行保存,在特定的事件将保存的数据进行恢复的工作机制称为持久化。
为什么要持久化
防止数据的意外丢失,确保数据安全性
持久化的过程保存什么
RDB: 将当前数据状态进行保存,快照形式,存储数据结果,存储而是简单,关注点在数据。它可以将存在于某一时刻的所有数据都写人硬盘里面。
AOF:将数据的操作过程进行保存,日志形式,存储操作过程,存储格式复杂,关注点在数据的操作过程,它会在执行写命令时,将被执行的写命令复制到硬盘里面。
这两种持久化方法既可以同时使用,又可以单独使用,在某些情况下甚至可以两种方法都不使用,具体选择哪种持久化方法需要根据用户的数据以及应用来决定。
RDB(Redis DataBase)
RDB其实就是把数据以快照的形式保存在磁盘上。什么是快照呢,你可以理解成把当前时刻的数据拍成一张照片保存下来。
RDB持久化是指在指定的时间间隔内将内存中的数据集快照写入磁盘。也是默认的持久化方式,这种方式是就是将内存中数据以快照的方式写入到二进制文件中,默认的文件名为dump.rdb。
三种出触发保存快照的方式:
- save
- bgsave
- save second changes
save指令
作用:手动执行一次保存操作。
设置持久化后存储的文件的名称
dbfilename xxx.rdb
说明:设置本地数据库文件名,默认值为dump.rdb
经验:通常设置为dump-端口号.rdb
案例:dbfilename dump_6379.rdb
设置存储.rdb文件的路径
dir
说明:设置存储.rdb文件的路径
经验:通常设置成存储空间较大的目录中,目录名称data
存储时是否压缩数据
rdbcompression yes
说明:设置存储至本地数据库时是否压缩数据,默认为yes,采用LZF压缩
经验:通常默认为开启状态,如果设置成no,可以节省CPU运行时间,但会使存储的文件变大
设置是否进行RDB文件格式的校验
rdbchecksumy yes
说明:设置是否进行RDB文件格式的校验,该校验过程