简介
- RDB
Redis DataBase
意为内存块照。 - Redis的数据时存在内存中的,所以服务器宕机会导致Redis中存储数据的丢失,使用内存快照可以恢复Redis的数据。
- 在指定某一时刻,以文件的形式存储当前Redis的数据。
RDB快照形式
-
全量快照
全量快照的操作是把内存中的所有数据都记录到磁盘中。带来的问题就是,快照文件写入的时长会随着Redis中的数据增大而变长。
Redis提供了save
和bgsave
两个命令来生成全量的RDB文件。- save:在主线程中执行,阻塞;
- bgsave:非阻塞,默认方案,创建一个子进程专门用于写入RDB文件。
-
增量快照
增量快照是基于全量快照的,在做了一次全量快照后,针对后续的所有Redis操作进行备份,之后的快照只需要处理备份的操作和全量快照,就可以恢复现场。一定程度上节约了空间,但是备份操作也需要额外的开销。