Codis 数据迁移redis cluster

注:支持增量同步,工具包在我的资源里面可以免费下载,点击以下链接即可,机器有外网的话按照文档步骤拉取github资源。

codis/redis迁移rediscluster工具-Redis文档类资源-CSDN下载

redis-migrate-tool环境安装


# 安装gcc等依赖包
yum install -y gcc gcc-c++ make autoconf automake libtool
 
# 克隆源代码
git clone https://github.com/vipshop/redis-migrate-tool.git
 
 
# 编译安装redis-migrate-tool
cd redis-migrate-tool
autoreconf -fvi
./configure
make
cp src/redis-migrate-tool /usr/bin

rmt.conf配置文件

codis ———> redis cluster 

[source]                                                                                                                                                                                                                                  
type: single                                                                                                                                                                                                                              
servers:                                                                                                                                                                                                                                  
- 10.138.20.100:6380                                                                                                                                                                                                                      
- 10.138.20.101:6380                                                                                                                                                                                                                      
- 10.138.20.102:6380                                                                                                                                                                                                                      
- 10.138.20.103:6380                                                                                                                                                                                                                      
                                                                                                                                                                                                                                            
[target]                                                                                                                                                                                                                                  
type: redis cluster                                                                                                                                                                                                                       
hash: fnv1a_64                                                                                                                                                                                                                            
hash_tag: "{}"                                                                                                                                                                                                                            
distribution: ketama                                                                                                                                                                                                                      
servers:                                                                                                                                                                                                                                  
- 10.140.1.53:6379                                                                                                                                                                                                                        
- 10.140.1.131:6379                                                                                                                                                                                                                       
- 10.140.1.106:6379                                                                                                                                                                                                                       
                                                                                                                                                                                                                                            
[common]                                                                                                                                                                                                                                  
listen: 0.0.0.0:8888                                                                                                                                                                                                                      
step: 1                                                                                                                                                                                                                                   
mbuf_size: 1024

启动 redis-migrate-tool

# 迁移数据
redis-migrate-tool -c rmt.conf -o rmt.log -d
 
通知状态页和 dbsize 确定 Key 数量是否一致 (初始同步完成)
执行 redis-cli -p 8888 info 确认
all_rdb_received:1    # 为 1
all_rdb_parsed:1
rdb_received_count:2  # Codis group 数量
rdb_parsed_count:2
 
# 配置服务连接 Redis 实例,检查 Codis 连接,知道所有连接断开
执行 redis-cli -p 8888 info 确认
all_rdb_received:1    # 为1
all_rdb_parsed:1
rdb_received_count:2  # Codis group 数量
rdb_parsed_count:2
total_msgs_recv:27005 # 一致
total_msgs_sent:27005
total_mbufs_inqueue:0 # 为0
total_msgs_outqueue:0
 
# 关闭 redis-migrate-tool
redis-cli -p 8888 shutdown

附:

将数据从 rdb 文件加载到 redis 集群。

[source]
type: rdb file
servers:
 - /data/redis/dump1.rdb
 - /data/redis/dump2.rdb
 
[target]
type: redis cluster
servers:
 - 127.0.0.1:7379
 
[common]
listen: 0.0.0.0:8888
step: 2
mbuf_size: 512
source_safe: false

从 aof 文件加载数据到 redis 集群。


[source]
type: aof file
servers:
 - /data/redis/appendonly1.aof
 - /data/redis/appendonly2.aof
 
[target]
type: redis cluster
servers:
 - 127.0.0.1:7379
 
[common]
listen: 0.0.0.0:8888
step: 2

你可能感兴趣的:(中间件,redis,数据库,数据迁移)