`
CrazyNemo
  • 浏览: 194508 次
  • 性别: Icon_minigender_1
  • 来自: 太原
社区版块
存档分类
最新评论

oracle 中 insert,copy,insert append 执行对比

阅读更多

还是由于迁移数据库,测试了insert,copy,insert append的执行速度。


环境:oracle9i向oracle11g迁移,linux系统。

表已建立,只允许插入数据,而不能使用create .. select 或 copy .. create。

 

1. 建立dblink,供insert,insert append使用。


2. 登录11g数据库。并set timing on


3. 建立视图查看redo size

create redo_size as

select value
from v$mystat, v$statname
where v$mystat.statistic# = v$statname.statistic#
and v$statname.name = 'redo size';


4. insert into dblink_test_tab select * from tran_rec_03@dblink_test;

 

insert /*+ APPEND */ into dblink_test_tab select * from tran_rec_03@dblink_test;


copy from ispay/ispay@crmtest insert dblink_test_tab using select * from tran_rec_03;


在执行以上所有语句前与后执行select * from redo_size;


5. 得到的结果如下:

redo_size 用时

insert 177821968 4'25"
insert append 3590412 3'15"
copy 124438620 4'20"
数据量:495665


结论:

insert 需要的时间最多,redo量最大。

insert append 需要的时间最短,redo量最小。

copy则不需要dblink。

0
1
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics