1. 初始化datax模板
- 在datax解压后的 bin 目录下执行如下命令生成模板:
#1.生成 streamreader -> streamwriter 的模板
python datax.py -r streamreader -w streamwriter
#2.生成 mysqlreader -> mysqlwriter的模板
python datax.py -r mysqlreader -w mysqlwriter # mysqlreader是由两部分组成【数据源类型+读取】,同理mysqlwriter由两部分组成【数据源类型+写入】
2. MySQL->MySQL
- 下面是从一个MySQL表中同步数据到另外一个MySQL表中
{
"job": {
"content": [
{
"reader": {
"name": "mysqlreader", //读取端
"parameter": {
"column": ["id","name","gender"], //获取的表字段
"connection": [
{
"jdbcUrl": ["jdbc:mysql://192.168.26.1:3306/test"], //数据库连接
"table": ["student"] //需要读取的数据表名
}
],
"password": "root", //数据源密码
"username": "root", //数据源用户名
"where": ""
}
},
"writer": {
"name": "mysqlwriter", //输入端
"parameter": {
"column": ["stu_gender","stu_name","stu_id"],
"connection": [
{
"jdbcUrl": "jdbc:mysql://192.168.159.36:3306/test",
"table": ["student"]
}
],
"password": "root",
"preSql": [],
"session": [],
"username": "root",
"writeMode": "insert" //输入端执行的操作 常见的是 insret、update
}
}
}
],
"setting": {
"speed": {
"channel": "1"
}
}
}
}
- 注意:就是此处不需要注意 column 中的字段名是否不同,因为数据输入的时候是按照列号进行匹配的