Redis 数据备份与恢复

Redis数据备份

Redis SAVE 命令用于创建当前数据库的备份。


语法

redis Save 命令基本语法如下:

redis 127.0.0.1:6379> SAVE

实例

redis 127.0.0.1:6379> SAVE 
OK

该命令将在 redis 安装目录中创建dump.rdb文件。


Redis数据迁移

redis服务有复制功能,可以通过执行SLAVEOF命令或者设置slaveof选项,让一个服务器去复制另一台服务器,俗称"主从同步"(redis2.8版本和低于2.8版本的复制逻辑有差别,需注意),所以,数据迁移分成以下几步:

  • 迁移的目标服务器设置为被迁移服务器的slave服务器

  • 待slave追上master的进度后,停掉写redis业务(无法停机的话,需要考虑迁移期间的流水重做,或者在业务低峰期执行迁移,接受短暂的数据丢失)

  • 主从服务器完全同步后,修改写redis业务配置,指向slave服务器,并断开主从关系

  • 恢复写redis业务

另外,外网运行的redis实例一定要设置主从并打开持久化选项(redis有两种持久化策略:RDB和AOF),防止单点故障


Redis数据恢复

如果需要恢复数据,只需将备份文件 (dump.rdb) 移动到 redis 安装目录并启动服务即可。获取 redis 目录可以使用 CONFIG 命令,如下所示:

 redis 127.0.0.1:6379> CONFIG GET dir
1) "dir"
2) "/usr/local/redis/bin"

以上命令 CONFIG GET dir 输出的 redis 安装目录为 /usr/local/redis/bin。

Bgsave

创建 redis 备份文件也可以使用命令 BGSAVE,该命令在后台执行。

实例

127.0.0.1:6379> BGSAVE

Background saving started

把命令大全装进口袋

微信关注