返回首页DA系统C#IDE文件同步服务屏保 今天是: 2026-05-05    "立夏"  夏季的第一个节气,表示盛夏时节的正式开始

搜索
热搜: linux 技术
Hi~登录注册
查看: 2677|回复: 0

[原创] 【原创】DataX在麒麟操作系统部署及从Mysql同步至达梦8数据库

[复制链接]
发表于 2024-7-24 18:20:45 | 显示全部楼层 |阅读模式
本帖最后由 da11 于 2024-7-24 18:27 编辑

DataX在麒麟操作系统部署及从Mysql同步至达梦8数据库


1、下载部署阶段

#测试部署前置信息:
#主机:2台,网络需要互相连通(内网、外网均可)
#操作系统:麒麟Ky10
#CPU架构:x86_64
#CPU核数:8核
#内存:8G
#硬盘分区:50G
#DataX部署路径:/data/
#数据库:2套,Mysql5.7版本(本帖不包含Mysql8以上的教程),达梦数据库8
#数据表信息,Mysql和达梦需提前创建好对应的库(实例/模式)和表,本帖为测试同步是否正常,故mysql和达梦的表和列名都是一致的(除了大小写)。


1.1、下载
datax项目github地址:https://github.com/alibaba/DataX/blob/master/userGuid.md   #可以从项目地址下方的Quick Start获取最新的稳定版tar包
直链下载地址:http://datax-opensource.oss-cn-hangzhou.aliyuncs.com/datax.tar.gz

1.2、存放部署
存放至2台主机中的其中一台,使用以下命令解压tar包

cd /data/
tar -zxf datax.tar.gz

1.3、环境检查
依赖1:  python2(最好是python2.6,python3因语法不同,会导致运行报错!)
依赖2:JDK(JDK1.8以上,推荐1.8)
依赖3:Apache Maven 3.x (Compile DataX)(可选依赖,如不使用Maven打包功能,这个依赖可不用安装!)

2、使用DataX同步数据阶段

2.1、首先,当前DataX版本默认只支持达梦7版本,如果需要同步达梦8,则需要下载达梦8的驱动,可自行百度下载。
2.1.1、下载好的达梦8驱动,放在如下位置:
/data/datax/lib、/data/datax/plugin/reader/rdbmsreader/lib、/data/datax/plugin/reader/rdbmswriter/lib下

2.1.2 、确认plugin.json是否有达梦数据库的驱动在列表中




2.2、创建同步job任务
2.2.1、使用vim命令编辑: vim /data/datax/job/mdsync.json



2.2.2、可参考下述的模板为mdsync.json文件

{
    "job": {
        "setting": {
            "speed": {
                "channel": 5
            }
        },
        "content": [
            {
                "reader": {
                    "name": "mysqlreader",                                            #Mysql读模型,不要修改
                    "parameter": {
                        "column": [
                            "Id",                                                               #表示对应的字段都需要读取
                            "Phone",
                            "Remark",
                        ],

                        "connection": [
                            {
                                "jdbcUrl": [
                                    "jdbc:mysql://192.168.0.1:3306/mysqlsource"   #Mysql数据串,mysqlsource是数据库名
                                ],
                                "table": [
                                    "mysqltesttable"                                             #Mysql读取的表
                                ]
                            }
                        ],
                        "password": "123456",
                        "username": "root",
                        "where": ""
                    }
                },
                "writer": {
                    "name": "rdbmswriter",                         #其他rdbms非关系型数据库写模型,不要修改
                    "parameter": {
                        "column": [
                            "ID",                                           #表示对应的字段都需要写入,因为达梦数据库跟随oracle数据库的特性,表名和字段名都需要大写!
                            "PHONE",
                            "REMARK",
                        ],

                        "connection": [
                            {
                                "jdbcUrl": "jdbc:dm://192.168.0.2:5236?schema=dmtest",    #达梦数据库连接串,dmtest是模式名
                                "table": [
                                    "MYSQLTESTTABLE"                     #达梦数据库写入的表名,因为达梦数据库跟随oracle数据库的特性,表名和字段名都需要大写!
                                ]
                            }
                        ],
                        "username": "datax"
                        "password": "TEST123456"                       #注意:达梦数据库的账号不区分大小写,但密码区分大小写!
                    }
                }
            }
        ]
    }
}



2.3、启动刚刚配置的任务
cd /data/datax/bin/
python ./datax.py /data/datax/job/mdsync.json



没有报错且出现下方任务同步数量一致,即同步成功。




2.3.1、最后,请验证达梦数据库是否成功同步数据。

3、总结,达梦8数据库本身不支持,但通过拉取新的达梦8数据库驱动及配置好json任务,即可成功同步。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册成为修仙之旅的少年~

x
 楼主| 发表于 2024-7-24 18:25:31 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册成为修仙之旅的少年~

x
回复 支持 反对

使用道具 举报

游客
回复
*滑块验证:

DA论坛飞机票来了~
快速回复 返回顶部 返回列表