数据库迁移与同步方案
针对企业级数据迁移需求,跨数据库、跨版本场景下,提供了可落地方案。环境需JDK1.6+及Python2.6.X,从GitHub获取源码或工具包。创建测试数据库与结构相同的表,修改config.json配置文件,执行命令完成数据同步。
在企业级应用中,数据迁移是个绕不开的话题。比方说,你需要在 SQL Server、MySQL 和 Oracle 之间来回倒腾数据,或者在不同版本的 SQL Server 之间搬数据。虽然同版本同数据库下搞个主从同步就够了,但跨数据库、跨版本的时候,就有点棘手了。这篇文章要做的,就是给遇到这类问题的朋友提供一套可落地的方案,帮你把数据迁移这件事儿顺顺利利地跑通。
搭建环境与准备
先从环境说起。JDK 推荐用 1.6 及以上版本,Python 的话,2.6.X 版本比较稳。当然了,Windows 系统也能部署,只要把对应的运行环境搭好就行。

接下来是获取源码或工具包。项目源码托管在 GitHub 上,地址是 github.com/Arvin-Mark/DataX-src,可以直接查看和下载。工具包则放在 github.com/Arvin-Mark/datax-bin,用来快速部署和执行数据处理任务。两种方式任选一个就好。

启动 MySQL 或其它数据库服务,创建两个自定义名称的测试数据库。这里拿学校场景举例,比如上海校区和校本部,各自对应一个库。

在这两个库中创建结构相同的表。举个例子,创建了两个 t_student 表,用来区分不同库的数据。

然后,往其中一个库的表里添加一些数据。

核心配置与执行
现在到了关键步骤——修改 config.json 文件,让它从一个数据库读取数据,再写入另一个数据库。配置内容大致如下:
{
{
{
],
]
}
]
}
},
],
],
{
]
}
]
}
}
}
],
}
}
}
}

配置搞定后,进入 datax-bin/bin 目录,执行相应的命令。

最后,切换到另一个库,检查一下表数据是否同步完成。










































