如何用建木CI导入导出Redis数据
2022-02-07 早春的树
如何用建木CI导入导出Redis数据
作者:早春的树 发布时间:2022-02-07 15:00:00

如何用建木CI导入导出Redis数据

上次介绍了如何使用建木CI导入导出MySQL数据后,就有小伙伴询问到:如何用建木CI迁移Redis数据呢?

这还不简单吗?建木官方都已经提供好节点了,于是马不停蹄的写下了这篇文章!

Redis是现在最受欢迎的NoSQL数据库之一,是一个使用ANSI C编写的开源、包含多种数据结构、支持网络、基于内存、可选持久性的键值对存储数据库,并提供多种语言的API。

Redis数据导出

在建木CI中,可以通过Redis数据导出节点 来完成数据导出,节点底层使用的是redis-dump命令

  • 查看节点文档

节点文档显示,输入参数中只有host是必填参数,另外四个参数是有默认值的,可以根据需求填写

  • 定义管道DSL

定义DSL时,将管道示例复制过来,修改一下参数值就可以了

1
2
3
4
5
6
7
8
9
10
name: Redis数据导出
pipeline:
redis_export:
type: redis_export:1.0.1
param:
host: xxx.xxx.xxx.xxx
port: 6379 # 默认为6379,可以省略此参数
database: 1 # 导出数据库1
password: ((redis.password)) # 没有密码可以忽略此参数
key: name # 模糊查询的key值,相当于命令:keys *name*

项目创建成功后,再点击触发就可以导出数据啦,输出参数redis_path为导出的Redis数据文件路径

一般情况下,导出导入节点是一起使用的,下面看一下如何用建木CI导入Redis数据吧!

Redis数据导入

在建木CI中,可以通过redis数据导入节点 来完成数据导入,节点底层使用的是redis-dump命令

  • 查看节点文档

可以看到,导入节点的输入参数和导出节点的输入参数是差不多的,多出来的redis_path参数则刚好是导出节点的输出参数,正好可以将导出导入节点连在一起使用😃

  • 定义管道DSL

和导出节点一样,复制DSL示例修改一下参数值就可以了

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
name: Redis数据同步
pipeline:
redis_export:
alias: Redis数据导出
type: redis_export:1.0.1
param:
host: xxx.xxx.xxx.xxx
port: 6379 # 默认为6379,可以省略此参数
database: 1 # 导出数据库1
password: ((redis.password)) # 没有密码可以忽略此参数
key: name # 模糊查询的key值,相当于命令:keys *name*
redis_import:
alias: Redis数据导入
type: redis_import:1.0.2
param:
host: xxx.xxx.xxx.xxx
database: 2 # 导入到数据库2中
password: ((redis.password))
redis_path: ${redis_export.redis_path}

保存项目DSL,点击触发,流程执行完毕就成功同步Redis数据了!

每次需要同步的时候,只需再点击触发就行了,简直不能太方便!