将数据从一个数据库的一个表迁移到另一个数据库的另一个表

时间:2017-11-12 20:22:26

标签: migration

我正在尝试使用java和Oracle将数据从数据库DB1的表A迁移到数据库DB2的表B.

我使用的是java 1.8,我的源数据库有Oracle 11g,目标数据库有Oracle 12c。

我在源数据库中创建了目标数据库的结构(scema,tables)。并通过在java中使用* insert到dest select * from source * query进行迁移。但是作为源表中的记录数量,以百万计,所以它耗费时间..以后在这个迁移的数据上,我想导出到我的实际目的地,这样也需要时间。

根据我的小知识..我想我不能使用带有2个连接的预准备语句。因为我的表包含400到500列,所以使用预准备语句绑定许多列并不是一个好主意。我的源表和目标表的结构也不同。我在属性文件中进行了字段映射,我将旧字段映射到新字段,以便插入select * from tbl query。像我的源表一样,列为col0001,目标中的相应列为ref_no。所以这也不允许我使用预备声明。但是通过在java中使用语句,我只能以单dB的形式迁移数据。

我也试过dblink。但对于clob数据类型,我无法迁移数据。

如果有人之前做过类似的事情,请提供解决方案。

1 个答案:

答案 0 :(得分:0)

对于一次性副本,您可以执行直接模式插入:

SUM

以下是其他一些相关的links