当前位置: 代码迷 >> Oracle管理 >> 通过dblink读取另一个数据库的数据插入到本地表,速度慢!解决方案
  详细解决方案

通过dblink读取另一个数据库的数据插入到本地表,速度慢!解决方案

热度:98   发布时间:2016-04-24 05:58:15.0
通过dblink读取另一个数据库的数据插入到本地表,速度慢!!!!!!!!!!!
通过dblink读取另一个数据库的数据插入到本地表,速度慢,而且每次只是读取一条数据插入本地,然后commit
插入的数据有个字段是blob类型,每一条记录大概20k
网络正常
sql语句大概如下:
insert   into   local_table  
select   *   from   remote_table@dblink   where   key_column=value


------解决方案--------------------
通过网络肯定比本地慢,建议批量操作,如
insert into local_table
select * from remote_table@dblink where key_column in (....);
应该会快不少.
------解决方案--------------------
使用forall insert 操作.
------解决方案--------------------
先建到本地临时表
create table tmp as
select * from remote_table@dblink where key_column=value;

insert into local
select * from tmp;
  相关解决方案