一.什么是持久化
持久化就是把内存的数据写到磁盘中去,防止服务宕机了内存数据丢失。
二.RDB(Redis DataBase)
2.1RDB是Redis默认的持久化方式
按照一定的时间将内存中的数据以快照的形式保存到磁盘中去,对应产生的文件为dump.db。(可以在上一篇redis.conf中查看对应的save参数,save参数决定快照的周期)
2.2高性能
Redis会单独创建(fork)一个子进程来进行写操作,让主进程继续处理命令,所以是IO最大化。
使用单独子进程来进行持久化,主进程不会进行任何IO操作,保证了Redis的高性能。
2.3触发机制:
- save规则满足的情况下,会自动触发rdb规则
- 执行flushall命令,也会触发rdb规则
- 退出redis,也会产生rdb
2.4恢复rdb文件
- /usr/local/bin 下面的dum.rpd先保存起来
- flushall或者shutdown会发现数据丢失
- 把保存的dump.rpd放在bin下面重启,发现数据恢复了