redis在线快速迁移

本文介绍了如何使用redis-migrate-tool进行高效、实时的redis数据迁移,包括工具的优势、安装步骤、使用方法及注意事项。针对4.X及以上版本的redis,推荐使用阿里开源的redis-shake作为替代方案。
摘要由CSDN通过智能技术生成

公司的redis服务器key的数量以达到千万级别,需要对redis进行实例拆分并线上迁移redis数据。

之前公司用的迁移脚本是基于一个key一个key的,速度非常慢,脚本如下:

#!/bin/bash

#redis 源ip
src_ip=192.168.1.1
#redis 源port
src_port=6379

#redis 目的ip
dest_ip=192.168.1.1
#redis 目的port
dest_port=9379

#src redis pass
src_auth_pass=Idianyou_Redis6379

#dest redis pass
dest_auth_pass=Idianyou_Redis6379
#要迁移的key前缀
key_prefix=circle
#迁到那个db
dest_db=0

#设置ttl过期时间
TTL=0

i=1

Cmd=/zywa/redis/bin
Other_Cmd=/zywa/redis_9379/bin
$Cmd/redis-cli -h $src_ip -p $src_port -n 0 -a $src_auth_pass keys "${key_prefix}*" | while read key
do
    $Cmd/redis-cli -h $src_ip -p $src_port -n 0 -a $src_auth_pass --raw dump $key | perl -pe 'chomp if eof' | $Other_Cmd/redis-cli -h $dest_ip -p $dest_port  -a $dest_auth_pass -n $dest_db -x restore $key 0
    echo "$i migrate key $key"
    ((i++))
done

于是,通过查阅资料,最后决定使用唯品会开发的开源的redis迁移工具:redis-migrate-tool。该项目已在github上开源。一下称为RMT。

该工具的优势:

快速。
多线程。
基于redis复制。
实时迁移。
迁移过程中,源集群不影响对外提供服务。
异构迁移。
支持Twemproxy集群,redis cluster集群,rdb文件 和 aof文件。
过滤功能。
当目标集群是Twemproxy,数据会跳过Twemproxy直接导入到后端的redis。

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值