Redis 可以通过以下方式实现数据备份和恢复:
- 使用 Redis 的 SAVE 命令创建数据快照:
- SAVE 命令会创建一个.rdb文件,包含当前数据库的所有数据。
- 这可以作为Redis的数据备份,用于恢复数据。
例如:
127.0.0.1:6379> SAVE
OK
运行该命令后,会在 redis.conf 中指定的 dir 目录下生成 dump.rdb 文件。
- 使用 Redis 的 BGSAVE 命令在后台创建数据快照:
- BGSAVE 会在后台异步创建数据库快照,不影响服务器正常运行。
- 一般用于定期数据备份,避免 SAVE 命令阻塞 Redis 服务器。
例如:
127.0.0.1:6379> BGSAVE
Background saving started
- 恢复数据快照:
- 只需要将备份的 .rdb 文件放在 redis.conf 指定的 dir 目录下,启动 Redis 服务器即可。
- Redis 会自动检查 dir 目录中的 .rdb 文件,并载入其中的数据库快照。
- 这样就完成了数据的恢复。
例如:
redis.conf
dir ./ # 保存 rdb 文件目录
复制 rdb 文件到指定目录并启动服务器
cp dump.rdb ./
redis-server redis.conf
- 使用 Redis 的 REPLICAOF 命令创建从节点并进行数据同步:
- 通过 REPLICAOF 将从节点指向主节点,从节点会与主节点同步数据。
- 如果主节点失效,可以使用 Redis-Cluster 工具将从节点提升为主节点,恢复服务。
- 这样也可以实现 Redis 的数据热备份和恢复。