使用RDB文件启动Redis群集
我正在尝试使用从单个实例Redis服务器获取的RDB文件创建Redis集群。以下是我尝试过的:使用RDB文件启动Redis群集,redis,amazon-elasticache,redis-cluster,Redis,Amazon Elasticache,Redis Cluster,我正在尝试使用从单个实例Redis服务器获取的RDB文件创建Redis集群。以下是我尝试过的: #! /usr/bin/env bash for i in 6000 6001 6002 6003 do redis-server --port $i --cluster-config-file "node-$i.cconf" --cluster-enabled yes --dir "$(pwd)" --dbfilename dump.rdb & done 该脚本启动4个支持群集的Red
#! /usr/bin/env bash
for i in 6000 6001 6002 6003
do
redis-server --port $i --cluster-config-file "node-$i.cconf" --cluster-enabled yes --dir "$(pwd)" --dbfilename dump.rdb &
done
该脚本启动4个支持群集的Redis进程。它还使用转储文件初始化每个节点
然后我运行redis trib.rb
,以便4个节点可以找到彼此:
redis-trib.rb create 127.0.0.1:6000 127.0.0.1:6001 127.0.0.1:6002 127.0.0.1:6003
我得到以下错误:
>>> Creating cluster
[ERR] Node 127.0.0.1:6060 is not empty. Either the node already knows other nodes (check with CLUSTER NODES) or contains some key in database 0.
我还尝试了一种变体,其中只有第一个节点/进程使用RDB文件初始化,其他节点/进程为空。我可以将3个空节点连接到一个集群中,但不能连接预填充数据的集群
将预先存在的RDB文件导入Redis集群的正确方法是什么
如果这是一个“”,这就是我这样做的原因:
我正在进行从单实例Redis服务器到Elasticache Redis群集(启用群集模式)的迁移。如果将RDB文件上载到S3,Elasticache可以在集群启动时轻松导入RDB文件。但是Elasticache集群需要很长时间才能启动。为了在测试迁移代码时减少反馈循环,我希望能够在本地启动集群
我也尝试过使用该实用程序,但它似乎没有任何选项可以用数据预填充集群。我相信您正在寻找这个@是的!真管用!如果你回答的话,我可以给你赏金。谢谢