@@ -29,10 +29,9 @@ jdk 1.8+
2929## 安装
3030
3131``` shell
32- $ wget https://github.com/leonchen83/redis-rdb-cli/releases/download/ ${version} /redis-rdb-cli-release.zip
32+ $ wget https://github.com/leonchen83/redis-rdb-cli/releases/latest/download /redis-rdb-cli-release.zip
3333$ unzip redis-rdb-cli-release.zip
34- $ cd ./redis-rdb-cli/bin
35- $ ./rct -h
34+ $ ./redis-rdb-cli/bin/rct -h
3635```
3736
3837## 手动编译依赖
@@ -50,8 +49,7 @@ maven-3.3.1+
5049$ git clone https://github.com/leonchen83/redis-rdb-cli.git
5150$ cd redis-rdb-cli
5251$ mvn clean install -Dmaven.test.skip=true
53- $ cd target/redis-rdb-cli-release/redis-rdb-cli/bin
54- $ ./rct -h
52+ $ ./target/redis-rdb-cli-release/redis-rdb-cli/bin/rct -h
5553```
5654
5755## 在docker中运行
@@ -70,10 +68,8 @@ $ rct -V
7068### Redis大量数据插入
7169
7270``` shell
73-
7471$ rct -f dump -s /path/to/dump.rdb -o /path/to/dump.aof -r
7572$ cat /path/to/dump.aof | /redis/src/redis-cli -p 6379 --pipe
76-
7773```
7874
7975### 把rdb转换成dump格式
@@ -141,7 +137,6 @@ $ rmt -s /path/to/dump.rdb -m redis://192.168.1.105:6379 -r
141137### 降级迁移
142138
143139``` shell
144-
145140# 同步 redis-7 的数据到 redis-6
146141# 关于参数 dump_rdb_version 请查看 redis-rdb-cli.conf 的相关注释
147142$ sed -i ' s/dump_rdb_version=-1/dump_rdb_version=9/g' /path/to/redis-rdb-cli/conf/redis-rdb-cli.conf
@@ -150,7 +145,6 @@ $ rmt -s redis://com.redis7:6379 -m redis://com.redis6:6379 -r
150145
151146### 在同步过程中处理大key
152147``` shell
153-
154148# 在目标redis中设置 proto-max-bulk-len 合适的值
155149$ redis-cli -h ${host} -p 6380 -a ${pwd} config set proto-max-bulk-len 2048mb
156150
@@ -159,7 +153,6 @@ $ export JAVA_TOOL_OPTIONS="-Xms8g -Xmx8g"
159153
160154# 执行迁移
161155$ rmt -s redis://127.0.0.1:6379 -m redis://127.0.0.1:6380 -r
162-
163156```
164157
165158### 同步rdb到远端redis集群
@@ -222,7 +215,6 @@ $ rcut -s ./aof-use-rdb-preamble.aof -r ./dump.rdb -a ./appendonly.aof
222215举例如下:
223216
224217``` shell
225-
226218$ rct -f dump -s /path/to/dump.rdb -o /path/to/dump.aof -d 0
227219$ rct -f dump -s /path/to/dump.rdb -o /path/to/dump.aof -t string hash
228220$ rmt -s /path/to/dump.rdb -m redis://192.168.1.105:6379 -r -d 0 1 -t list
@@ -288,12 +280,10 @@ $ docker-compose down
2882801 . 用 openssl 生成 keystore
289281
290282``` shell
291-
292283$ cd /path/to/redis-6.0-rc1
293284$ ./utils/gen-test-certs.sh
294285$ cd tests/tls
295286$ openssl pkcs12 -export -CAfile ca.crt -in redis.crt -inkey redis.key -out redis.p12
296-
297287```
298288
2992892 . 如果源 redis 和目标 redis 使用同样的 keystore. 那么配置如下参数
@@ -422,8 +412,7 @@ migrate_flush=yes
422412
4234131 . 使用如下maven pom.xml文件创建一个Java工程
424414
425- ``` xml
426-
415+ ``` xml
427416<?xml version =" 1.0" encoding =" UTF-8" ?>
428417<project xmlns =" http://maven.apache.org/POM/4.0.0"
429418 xmlns : xsi =" http://www.w3.org/2001/XMLSchema-instance"
@@ -584,8 +573,7 @@ $ ret -s redis://127.0.0.1:6379 -c config.conf -n your-sink-service
584573
5855741 . 创建class ` YourFormatterService ` 继承 ` AbstractFormatterService `
586575
587- ``` java
588-
576+ ``` java
589577public class YourFormatterService extends AbstractFormatterService {
590578
591579 @Override
@@ -602,7 +590,6 @@ public class YourFormatterService extends AbstractFormatterService {
602590 return context;
603591 }
604592}
605-
606593```
607594
6085952 . 使用Java SPI来注册这个实现类
@@ -635,7 +622,6 @@ $ cp ./target/your-service-1.0.0-jar-with-dependencies.jar /path/to/redis-rdb-cl
6356224 . 运行formatter服务
636623
637624``` shell
638-
639625$ rct -f test -s redis://127.0.0.1:6379 -o ./out.csv -t string -d 0 -e json
640626```
641627
@@ -647,7 +633,7 @@ $ rct -f test -s redis://127.0.0.1:6379 -o ./out.csv -t string -d 0 -e json
647633* [ Anish Karandikar] ( https://github.com/anishkny )
648634* [ Air] ( https://github.com/air3ijai )
649635* [ Raghu Nandan B S] ( https://github.com/raghu-nandan-bs )
650- * 特别感谢 [ Kater Technologies ] ( https://www.kater. com/ )
636+ * [ Mads Nedergaard ] ( https://github. com/madsnedergaard )
651637
652638# 商业咨询
653639
0 commit comments