写点什么

【YashanDB 知识库】使用 DataX 工具迁移 yashan 数据到 maxcompute

作者:YashanDB
  • 2025-02-12
    广东
  • 本文字数:982 字

    阅读完需:约 3 分钟

本文内容来自 YashanDB 官网,原文内容请见https://www.yashandb.com/newsinfo/7773554.html?templateId=1718516


注意:迁移需要使用崖山适配过的 DataX 工具包,下载链接:DataX: 阿里云DataWorks数据集成的开源版本

 

DataX 单表迁移

使用 DataX 工具主要是配置好对应的 json 文件,使 DataX 工具可以根据 json 文件进行对应数据库表的迁移操作

json 文件配置模板如下:template.json

配置完成后,执行下面命令即可执行 DataX 的同步操作(路径根据实际情况修改)

python bin/datax.py test_json/test.json


DataX 批量表迁移(以迁移一个用户下所有表为例)

1、根据实际情况填写 json 模板文件与源库目标库相关的连接信息,并放在下面脚本工具同一个目录下:

2、获取需要同步的表清单 table.list

sql 命令:select table_name from dba_tables where owner='*****'; (*****填写实际情况下崖山数据库的用户名)

将输出导出到一个 table.list 文件中,每行记录一个表名

3、针对各个表生成对应的 json 配置文件(脚本中的[schema]根据实际情况更改为崖山数据库的用户名)

使用yas_dataxmove_auto_create_json.sh工具,为每张表生成对应的 json 文件

shell 命令:./yas_dataxmove_auto_create_json.sh table.list username/password@ip:port

运行结果:运行结束后会在当前目录生成一个 json 目录,里面包含了 table.list 所有以表名命名的 json 配置文件

4、执行数据迁移操作(脚本中的[schema]根据实际情况更改为崖山数据库的用户名,注意根据实际情况对齐脚本工具中的路径)

使用yas_dataxmove_exists_json.sh工具,根据上一步骤生成的 json 文件用 dataX 执行迁移操作

shell 命令:./yas_dataxmove_exists_json.sh table.list username/password@ip:port

运行结果:运行结束后会在当前目录下生成 log 目录,里面包含 table.list 所有以表名命名的.log 迁移日志文件,以及有_temp.log 后缀的临时视图创建及删除结果的日志文件。

5、简单的数据比对(脚本中的[schema]根据实际情况更改为崖山数据库的用户名,需要安装 maxcompute 客户端并可以连接上 maxcompute)

运行check_out.sh脚本,比对源库与目标库数据每张表的行数是否⼀致。

shell 命令:./check_out.sh table.list username/password/@ip:port [maxcompute 的 bin 目录路径]

运行结果:如果目标库与源库表行数一致,则输出:Proofread successfully;若有表行数比对不一致则输出 Proofread fail,并分别输出源库和目标库对应表的行数

发布于: 刚刚阅读数: 5
用户头像

YashanDB

关注

全自研国产新型大数据管理系统 2022-02-15 加入

还未添加个人简介

评论

发布
暂无评论
【YashanDB知识库】使用DataX工具迁移yashan数据到maxcompute_数据库_YashanDB_InfoQ写作社区