我正在尝试使用 RIOT 将数据从一个 Redis 7.4 实例迁移到另一个具有相同版本的实例:
./riot-3.1.5/bin/riot \
--metrics \
-n 1 -h $SOURCE_REDIS_HOST -p $SOURCE_REDIS_PORT \
replicate \
-n 1 -h $TARGET_REDIS_HOST -p $TARGET_REDIS_PORT --user $TARGET_REDIS_USER --pass $TARGET_REDIS_PASSWORD
一切似乎工作正常,但是每次我运行此迁移时,目标 Redis 实例中都会缺少大约 750 个(每次更改)。
这可能是什么原因造成的?我尝试批量处理,问题仍然存在。 当使用暂存数据(388 个密钥)运行时,所有密钥均已正确导入。
我尝试了几种args组合,在Google上搜索,基本上昨天和今天我也一直在敲头。
旁注:我有权访问源 RDB 文件,但我无权访问运行目标 Redis 实例(由第 3 方管理)的服务器,因此我不能简单地将 RDB 文件复制到新实例,这就是我过去也这么做过。
使用Riot 4.1.0解决了这个问题,所有密钥都被导入(我使用的是3.1.5)。