redis的数据迁移

redis-migrate-tool工具是由唯品会开源的,用于在多种redis架构间迁移数据。该工具基于redis复制,在迁移过程中,源redis集群仍可对外提供服务;若目标集群是Twemproxy,其会将数据直接导入后端的redis节点;能通过监控端口,查看迁移状态,且迁移完成后,可进行抽样检查。

安装redis-migrate-tool

# yum install automake libtool autoconf bzip2 -y

# git clone https://github.com/vipshop/redis-migrate-tool.git

# cd redis-migrate-tool

# autoreconf -fvi

# ./configure

# make

# src/redis-migrate-tool -h

This is redis-migrate-tool-0.1.0

...

redis-migrate-tool工具依据配置文件的配置,完成从源redis集群到目标集群的数据迁移。配置文件包括3部分:source,target和common。如下以从Redis CLuster迁移数据到Twemproxy集群为例,看下整个过程。

$ cat rmt.conf

[source]

type: redis cluster

servers:

- 127.0.0.1:6879

[target]

type: twemproxy

hash: fnv1a_64

distribution: ketama

redis_auth: abcdefg

servers:

- 127.0.0.1:6379:1

- 127.0.0.1:6389:1

[common]

listen: 0.0.0.0:8888

step: 1

mbuf_size: 512

迁移开始

$ redis-migrate-tool -c rmt.conf -o rmt.log -d

观察迁移进度

$ tail -f rmt.log

...

观察迁移状态

$ redis-cli -p 8888

127.0.0.1:8888> info

# Server

version:0.1.0

...

退出工具

127.0.0.1:8888> shutdown

not connected>

抽样检查迁移结果

$ redis-migrate-tool -c rmt.conf -C redis_check

Checked keys: 1000

Inconsistent value keys: 0

...

Check job finished, used 0.043s

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180801G0RB7Y00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码关注腾讯云开发者

领取腾讯云代金券