DataX github 地址:https://github.com/alibaba/DataX/tree/master
mysql 数据读取:https://github.com/alibaba/DataX/blob/master/mysqlreader/doc/mysqlreader.md
mysql 数据写入:https://github.com/alibaba/DataX/blob/master/mysqlwriter/doc/mysqlwriter.md
安装 jdk 1.8
1.mysql 5.7.44 数据库内表数据迁移至另外一台 mysql5.7.44 数据库
tar -xzvf datax.tar.gz vim /etc/profile export DATAX_HOME=/data/datax source /etc/profile cd datax # 测试 python3 bin/datax.py job/job.json # 结果 2025-07-11 18:06:25.465 [job-0] INFO JobContainer - 任务启动时刻 : 2025-07-11 18:06:15 任务结束时刻 : 2025-07-11 18:06:25 任务总计耗时 : 10s 任务平均流量 : 253.91KB/s 记录写入速度 : 10000rec/s 读出记录总数 : 100000 读写失败总数 : 0
更换 mysql驱动包:/data/datax/plugin/reader/mysqlreader/libs/mysql-connector-java-5.1.47.jar 替换为:mysql-connector-java-5.1.49.jar
{ "job": { "setting": { "speed": { "channel":1 } }, "content": [ { "reader": { "name": "mysqlreader", "parameter": { "username": "username", "password": "password", "connection": [ { "querySql": [ "select sku_id, name, category_id, from_date, price from sku_info where sku_id < 10;" ], "driver": "com.mysql.jdbc.Driver", "jdbcUrl": ["jdbc:mysql://10.1.1.240:3306/test_datax?useSSL=false"] } ] } }, "writer": { "name": "mysqlwriter", "parameter": { "username": "username", "password": "password", "writeMode": "insert", "column": ["sku_id", "name", "category_id", "from_date", "price"], "batchSize": 2048, "connection": [ { "driver": "com.mysql.jdbc.Driver", "jdbcUrl": "jdbc:mysql://10.1.1.101:3306/test_datax?useSSL=false", "table": ["sku_info"] } ] } } } ] } }
条件:
"select sku_id, name, category_id, from_date, price from sku_info where sku_id < 10;"
如果执行第二次sku_id>9的,请重新配置一个文件修改条件,否则有可能出现执行的时候还是sku_id<10