我们使用redis的时候,经常需要将db0的数据,迁移到db1上,做数据迁移。或者将本地db0的数据,迁移到远程db0上。
目前原生redis命令行,是不支持跨db迁移的命令的,而且特别是数据非常大的时候,使用脚本来自己做转换,迁移的效率也很低,速度很慢。而且自己写迁移脚本非常容易出错有bug。
下面我介绍下使用yunedit-redis来做跨db数据复制/迁移的方案,不仅支持同一redis实例的数据迁移,而且支持跨redis实例,跨机房迁移。即使redis服务器在云端的内网,也支持使用ssh隧道做内网穿透,yunedit-redis也支持在客户端配置ssh隧道穿透内网管理redis。
(一)安装和启动yunedit-redis
这一步比较简单,在yunedit-redis官网下载yunedit-redis,双击安装即可。安装完后双击桌面的图标,就可以启动yunedit-redis了。
(二)配置redis连接
打开yunedit-redis后,可以点击左侧列表的加号,添加redis的连接。因为我们导入导出数据,需要选择一个redis连接,然后再选择这个redis连接实例下的某个db。

(三)选择需要导出数据的db,导出数据
连接上某个redis实例后,就可以在左侧看到这个redis的所有db,选中其中一个db,点击右键,然后导出即可,导出的数据,会导出到本地一个zip文件之中,我们无需解压这个zip文件:

(四)导入zip文件数据到其他实例的db上
如同上图所示,也是在redis实例的某个db上点右键,点击导入,就可以选择导入的策略了,比如list是否允许重复、比如导入到那个db等等,如下图所示:


可以看到导入的时候,不仅能选择导入的类型、是否防止重复导入等等可选项。还能选择最终导入到哪个db,因此,就可以跨db导入数据了。全程都是可视化操作,不需要写脚本,减少了出错的风险。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。