redis数据迁移工具之redis-shake

redis-shake是阿里云redis和mongodb团队开源,支持2.8~5.0版本的单实例以及部分代理与集群之间同步。

redis-shake同步原理
第一阶段:源redis节点到redis-shake
1.psync
2.发送rdb
3.发送增量命令

第二阶段:redis-shake到目的redis节点
1.写入rdb
2.写入增量命令

redis-shake特点
高效性:全量同步阶段并发执行,增量同步阶段异步执行,能够达到毫秒级别延迟取决于网络延时。同时,还对大key同步进行分批拉取,优化同化性能。

redis-shake的同步方式
1.dump:从源端下载rdb文件
2.decode:以json格式解析rdb文件
3.restore:将rdb文件恢复健康到目的端red is
4.sync:支持数据同步,原端可以是单节点,主从,集群也支持codis.目的端同样可以是各种模式的redis
5.rump:采用scan和restore命令进行的全量迁移。主要是应对一些云厂商没有开放sync/psync权限的情况下,进行全量迁移的场景

redis-shake的使用

##下载
wget https://github.com/alibaba/RedisShake/releases/download/release-v2.0.3-20200724/redis-shake-v2.0.3.tar.gz

##解压
tar -zxvf redis-shake-v2.0.3.tar.gz

##修改配置文件
vim redis-shake.conf
parallel =      ##同步并发线程数量
source.type = cluster    ##模式
source.address = slave@ip:port  ##源地址
source.password_raw =    ##没有密码,不用输入
source.auth_type = auth   
target.type = cluster           ##模式
target.address = @ip:port  ##目的地址
target.password_raw = 
target.auth_type = auth
source.rdb.parallel =     ##rdb同步并发

##启动
redis-shake.linux -type=sync -conf=redis-shake.conf

你可能感兴趣的:(redis,redis,数据库)