Redis的RDB持久化(持续更新)
1.redis持久化的方式有两种:RDB 和 AOF RDB:类似于linux的快照,在某个时间点备份 临时文件 。 是把当前内存中的数据集快照写入磁盘,也就是 Snapshot 快照(数据库中所有键值对数据)。恢复时是将快照文件直接读到内存里。 优点:1.每隔一段时间备份,全量备份 2.灾备简单,可以远程传输 3.子进程进行备份时,主线程不会有任何io操作(不会有写入修改或删除),保证备份数据的完整性 4.相对于AOF来说,当有更大文件的时候,就可以快速重启恢复 缺点:1.发生故障时,有可能会丢失最后一次的备份数据 2.子进程所占用的内存会和父进程一样,造成CPU负担 3.由于定时全量备份是重量级的操作,所以对于实时备份,就无法处理 自动触发模式: 找到: SNAPSHOTTING(快照) 接着往下找; dir:就是定义的RDB所保存的位置, 保存在磁盘的名称 就是 dump.rdb 这就是 dump.rdb 回到 redis.conf: 保存 更改时间 发生的更改次数 如果发生了 一次更改,则在15分钟后进行备份(保存快照), 如果至少发生了10次更改,则在5分钟后进行备份(保存快照) 如果在保存的过程中发生错误,yes就是停止写的操作。 no继续保存(会造成数据不一致) stop-writes-on-bgsave-error : 默认值为yes