本文介绍如何通过ODI从MySQL同步数据到Oracle。

1、定义物理体系结构

1.1 创建新的MySQL数据服务器 Topology->Physical Architecture->MySQL,右击选择New Data Server,在Definition对话框输入相关信息,如下图: 在JDBC对话框输入如下信息,如下图: 点击保存。 1.2 创建MySQL的物理方案 Topology->Physical Architecture->MySQL->“HUE_MySQL”,在Definition对话框输入名称以及数据库,点击保存。

2、定义逻辑体系结构

Topology->Logical Architecture->MySQL,右击选择“New Logical Schema”,在definition对话框选择对应的物理方案 ,点击保存。

3、定义MySQL模型

Designer->Models->New model,如下图所示 点击“保存”。接着点击“Reverse Engineer”,同步MySQL的表结构。 之前已经同步了一份Oracle数据库表结构,这里直接使用即可。如果没有,还需按照上述步骤创建。

4、创建项目

Designer->Projects->New Project,输入名称,点击保存。

5、创建映射

Designer->Projects->MySQL_To_Oracle->Mapping,右击选择“New Mapping”,然后拖动源表和目标表进行链接,如下图: 这里的知识模块选择“LKM SQL to SQL (Built-In).GLOBAL”,如下图所示: 注意: A、如果遇到MySQL的字段类型和Oracle的字段类型不匹配时,在Model里编辑源表和目标表的字段类型即可。 B、在映射图中的逻辑选项里,设置目标表的target的Integration Type为Incremental Update即可,如下图: C、千万别忘记点击“保存”。

6、验证映射

点击图中箭头所示的图标进行验证,如果报错根据实际情况进行修改。