博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
增加关系型数据库驱动配置同步任务
阅读量:6437 次
发布时间:2019-06-23

本文共 2804 字,大约阅读时间需要 9 分钟。

购买ECS

作为自定义资源组的机器建议,按照下面规格购买:

  • 使用centos6、centos7或aliyunos。
  • 如果您添加的ECS需要执行MaxCompute任务或同步任务,需要检查当前ECS的python版本是否是python2.6或2.7的版本(centos5的版本为2.4,其它os自带2.6以上版本)。
  • 请确保ECS有访问公网能力,可以是否能ping通 www.aliyun.com 作为衡量标准。
  • 建议ECS的配置为8核16G。

添加自定义资源组

  • 创建项目后,单击对应项目后的进入数据开发;
  • 进入DataStudio页面,左上角选择数据集成页面里的资源组界面;
    1_jpeg
  • 命令运行安装自定义资源组:

Agent只能安装在Linux机器上,添加的每个服务器都需要初始化。

如果是新添加机器,请按照提示的步骤添加自定义资源组,注意:保持在root用户下:

  • 根据上面相关的命令,部署Agent,资源组的状态为可用代表添加成功了
    2_jpeg

如果刷新后还是停止状态,您可以重启alisa命令。切换到admin账号,执行下述命令。

/home/admin/alisatasknode/target/alisatasknode/bin/serverct1 restart

增加mysql驱动为案例

概述

  • RDBMS Reader插件实现了从RDBMS读取数据。在底层实现上,RDBMS Reader通过JDBC连接远程RDBMS数据库,并执行相应的SQL语句将数据从RDBMS库中SELECT出来。目前支持达梦、DB2、PPAS、Sybase数据库的读取。RDBMS Reader是一个通用的关系数据库读插件,您可以通过注册数据库驱动等方式增加任意多样的关系数据库读支持。
  • 简而言之,RDBMS Reader通过JDBC连接器连接到远程的RDBMS数据库,并根据您配置的信息生成查询SQL语句并发送到远程RDBMS数据库,并将该SQL执行返回的结果,使用DataX自定义的数据类型拼装为抽象的数据集,并传递给下游Writer处理。
  • 对于您配置的Table、Column、Where等信息,RDBMS Reader将其拼接为SQL语句发送到RDBMS数据库。对于您配置的querySql信息,RDBMS直接将其发送到RDBMS数据库。
  • 目前RDBMS Reader支持大部分通用的关系数据库类型如数字、字符等,但也存在部分类型没有支持的情况,请注意检查您的类型,根据具体的数据库做选择。

RDBMS Writer可通过以下方式增加新的数据库支持驱动

  • 进入RDBMS Reader对应目录,${DATAX_HOME}为DataX主目录,即/home/admin/datax3/plugin/reader/rdbmswriter目录,如下图:
  • 在RDBMS Reader插件目录下找到plugin.json配置文件,在此文件中注册您具体的数据库驱动,如下面的"mysql.jdbc.Driver",放在drivers数组中。RDBMS Reader插件在任务执行时会动态选择合适的数据库驱动连接数据库,如下图:
    3_jpeg
  • 在rdbmsreader插件目录下找到libs子目录,将您下载的mysql的jar包上传上去,如下图的mysql-connector-java-5.1.34.jar。
    4

配置任务

  • 目前通过RDBMS插件只能在资源组脚本模式配置同步任务,您可以创建您的json任务,如下图:
    5
  • 配置您相关的json具体内容如下:
{"job": {        "setting": {            "speed": {                "byte": 1048576            },            "errorLimit": {                "record": 0,                "percentage": 0.02            }        },        "content": [            {                "reader": {                    "name": "rdbmsreader",                    "parameter": {                        "username": "xxxxx",                        "password": "yyyyyy",                        "column": [                            "*",                           ],                        "splitPk": "id",                        "connection": [                            {                                "table": [                                    "a2"                                ],                                "jdbcUrl": [                                    "jdbc:mysql://xxx.mysql.yy.aliyuncs.com:3306/xxx"                                ]                            }                        ],                                               "where": ""                    }                },                "writer": {                    "name": "streamwriter",                    "parameter": {                        "print": true                    }                }            }        ]    }}

运行任务

  • 直接运行下面的命令:/usr/bin/python2.7 /home/admin/datax3/bin/datax.py rdbmsreader.json
    6

转载地址:http://yokwo.baihongyu.com/

你可能感兴趣的文章
从尾到头打印单链表
查看>>
getopt
查看>>
我的第一个IT产品:PublicLecture@HK【My First IT Product】
查看>>
优秀员工与普通员工
查看>>
CCNP学习笔记15-RSTP
查看>>
DELL服务器iDRAC相关设置
查看>>
JVM学习笔记(一)------基本结构
查看>>
$@等特定shell变量的含义
查看>>
我的友情链接
查看>>
(超详细版)Linux下Hadoop2.7.1集群环境的搭建(3台为例)
查看>>
策略模式、上下文与内部类的思考
查看>>
关于getCurrentUrl的获取问题
查看>>
2014年工作中遇到的20个问题:120-140
查看>>
[原创]windows server 2012 AD架构 试验 系列 – 11AD域和站点部署(2)
查看>>
解决win10不能安装NVIDIA的RTX 20系列的显卡驱动问题
查看>>
pdf如何解密
查看>>
jquery datatable的详细用法
查看>>
并发编程之 进程
查看>>
ansible 下lineinfile详细使用
查看>>
oracle 用函数返回对象集合
查看>>