• ADADADADAD

    阿里数据迁移同步工具redis-shake[ 建站问答 ]

    建站问答 时间:2024-12-25 10:10:19

    作者:文/会员上传

    简介:

    这里给大家分享一个Redis的数据迁移和清洗工具那就是阿里巴巴开源工具redisshake,redisshake工具使用起来比较简单,也经历过大厂的认证,正确性和稳定性都有非常保障。redisshak

    以下为本文的正文内容,内容仅供参考!本站为公益性网站,复制本文以及下载DOC文档全部免费。

    这里给大家分享一个Redis的数据迁移和清洗工具那就是阿里巴巴开源工具redisshake,redisshake工具使用起来比较简单,也经历过大厂的认证,正确性和稳定性都有非常保障。

    redisshake 常见于生产环境中将 Redis 单机实例迁移到集群实例或者需要无缝将一个小规格 Redis 实例迁移到另一个大规格 Redis 实例。

    redisshake 支持迁移单实例、集群等,也支持将数据备份或者迁移到阿里云。经过迭代,目前 redisshake 有两个版本。

    从 GitHub 下载二进制或者自己从代码编译都行,redisshake 使用 Go 语言开发,整体代码也比较简单易懂,感兴趣的小伙伴也可以自行查阅。除此之外,如果要使用数据过滤的功能,可以使用 Lua 语言进行自定义,保证了工具的灵活性。

    更多项目详情请查看如下链接。

    开源项目地址:github/alibaba/RedisShake

    开源项目作者:github/alibaba

    实战

    正式操作前先在测试环境实践一把看看效果如何,先说明下环境

    源库:192.168.28.142

    目标库:192.168.147.128

    步骤一:

    使用wget命令下载至本地

    wget github/alibaba/RedisShake/releases/download/releasev2.0.220200506/redisshakev2.0.2.tar.gz

    步骤二:

    解压,进入相应目录看看有哪些东东

    步骤三:

    更改配置文件redisshakeonf

    日志输出

    源端连接配置

    目标端设置

    步骤四:

    ./start.sh redisshakeonf sync

    查看日志文件

    查看下数据同步情况,如下图,发现所有的库都同步过来了,非常nice。

    但如果只想同步某个库又该怎么操作呢?

    马上查阅了配置文件及官方文档,稍作调整就可以,具体如

    配置项 说明

    target.db:设置待迁移的数据在目的Redis中的逻辑数据库名。例如,要将所有数据迁移到目的Redis中的DB10,则需将此参数的值设置为10。当该值设置为1时,逻辑数据库名在源Redis和目的Redis中的名称相同,即源Redis中的DB0将被迁移至目的Redis中的DB0,DB1将被迁移至DB1,以此类推。

    filter.db.whitelist指定的db被通过,比如0;5;10将会使db0, db5, db10通过, 其他的被过滤

    那比如我这边只想把源端的10库同步至目标端的10库只需对配置文件进行如下改动

    重新执行步骤四命令,执行后效果如下,大功告成。

    另外还有一个配置项特意说明下

    配置项说明

    key_exists当源目的有重复key,是否进行覆写。rewrite表示源端覆盖目的端。none表示一旦发生进程直接退出。ignore表示保留目的端key,忽略源端的同步key。该值在rump模式下没有用。

    当前仅仅是单个节点到单个节点的同步,如涉及到集群等其他一些场景下,请参考官方文档说明,自行测试。

    腾讯云、阿里云、Google谷歌云、华为云、天翼云、移动云、AWS亚马逊云代理商哪家好?推荐找,可享受全网最高折扣、高额返现优惠,电话40 0

    阿里数据迁移同步工具redis-shake.docx

    将本文的Word文档下载到电脑

    推荐度:

    下载