Redis 数据备份与恢复学习笔记

Redis备份

在Redis中,数据备份可以使用save、bgsave两种命令实现。

SAVE命令

SAVE命令会阻塞当前Redis服务器的所有客户端进程。Redis会将数据以RDB文件形式保存到磁盘上。该文件包含了Redis在某个时间点上的所有数据。

bashCopy Code
127.0.0.1:6379> save OK

BGSAVE命令

BGSAVE命令不会阻塞Redis服务器进程,它会fork出一个子进程来执行RDB文件的保存操作。这样,Redis可以在主进程继续响应客户端请求时,同时也完成了数据备份的操作。

bashCopy Code
127.0.0.1:6379> bgsave Background saving started

Redis恢复

在需要恢复数据时,我们可以通过将RDB文件移动或者复制到Redis服务器的工作目录下,并重启Redis服务器进程,来实现对数据的恢复。

恢复步骤

  1. 停止Redis服务器进程
  2. 备份原有的Redis数据文件
  3. 将需要恢复的RDB文件放置到Redis服务器工作目录下
  4. 启动Redis服务器进程

实例

bashCopy Code
# 停止Redis进程 $ redis-cli SHUTDOWN # 备份原有Redis数据文件 $ cp /var/lib/redis/dump.rdb /var/lib/redis/dump.rdb.bak # 将需要恢复的RDB文件放置到Redis服务器工作目录下 $ cp ~/backup/dump.rdb /var/lib/redis/ # 启动Redis进程 $ redis-server