redis-port
redis-port copied to clipboard
redis4.0.1迁移到codis3.2.2报错
2018/07/19 14:34:08 sync.go:123: [INFO] + 2018/07/19 14:34:09 sync.go:73: [INFO] rdb file = 4920652048 2018/07/19 14:34:09 utils.go:361: [PANIC] parse rdb header error [error]: verify version, invalid RDB version number 8 1 /home/travis/gopath/src/github.com/CodisLabs/redis-port/pkg/rdb/loader.go:44 github.com/CodisLabs/redis-port/pkg/rdb.(*Loader).Header 0 /home/travis/gopath/src/github.com/CodisLabs/redis-port/cmd/utils.go:360 main.newRDBLoader.func1 ... ... [stack]: 0 /home/travis/gopath/src/github.com/CodisLabs/redis-port/cmd/utils.go:361 main.newRDBLoader.func1 ... ... 目前不支持4.x迁移?只是单个实例的redis 啊,没用cluster
用 redis-port 最新版,cgo-4.x 那个 branch 的试试看。
PS, 因为 redis 总是在改 rdb 格式,go 代码的 rdb parser 总跟不上 redis 格式的修改,所以我在 cgo-4.x 那个 branch 直接把 redis 的源代码给嵌进去了。
这块用的是最新版,目前采用的方案是先dump一次,然后把全量文件用redis-restore指令导入就可以了,只是这样必须凌晨停机维护,蛋疼啊 又要包夜
补充下,rdb文件大概在14g左右,是不是太大导致,内网1000M的速度
hmm,你确定是 redis-4.x-cgo
这个 branch 么?
我仔细翻了一下代码,RDB_VERSION
是直接从 redis 4.x 代码里面读的,确定支持 RDB_VERSION=8
的,这个错误不应该的。
而且最新的报错方式是,我觉得是应该是你使用的分支不对。
额 这块可能是用了2.0 beta版本,源码编译不过,go语言苦手,没有编译教程,从其他issue里面看你回复的build 貌似还是1.x版本的,有木有最新源码的编译方式啊?
那直接用编译好的版本不可以么?
On Mon, Jul 23, 2018 at 4:33 PM cc4dogman [email protected] wrote:
额 这块可能是用了2.0 beta版本,源码编译不过,go语言苦手,没有编译教程,从其他issue里面看你回复的build 貌似还是1.x版本的,有木有最新源码的编译方式啊?
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/CodisLabs/redis-port/issues/54#issuecomment-406981730, or mute the thread https://github.com/notifications/unsubscribe-auth/AhnaS6siRzYUT7am6rLCwt2vSNaRLZyVks5uJYpVgaJpZM4VV54F .
似乎不太对, v2.0-beta 就应该是 redis-4.x-cgo 这个 branch 的才对。
是 啊 看时间差不多就用了relsease里面的最新版本,不知道为啥还不支持,晚点我在倒一次看看