常用的大表复制技术
传统方法 建表然后insert into
create table CLW_TEMP1 ( DX_PROCESS_NO VARCHAR2(15),TELE_NUM VARCHAR2(11),OPER_CODE VARCHAR2(10),
DEPT_CODE VARCHAR2(8),DO_DEPT_CODE VARCHAR2(8),PLAN_ID NUMBER(8),ICC_ID VARCHAR2(25),PROCESS_DATE DATE);
insert into clw_temp1 select * from clw_Temp;
执行时间 56.891s
优化后的传统方法
Create table as …
CTAS的方法速度快是因为减少I/O
drop table clw_temp1;
create table clw_Temp1 as select * from clw_temp;
74.922
CTAS UNRECOVERABLE
UNRECOVERABLE 能减半建表的时间,同时能够减少资源占用 因为它可以越过redo log processing. drop table clw_temp1;
create table clw_Temp1 unrecoverable as select * from clw_temp;
26.531
CTAS PARALLEL
并行访问并不是degree越大越好的,下面的例子已经说明了这个问题 具体值和硬件和软件平台都有关系 也和oracle初始设置有关
PARALLEL_MIN_SERVERS PARALLEL_MAX_SERVERS
PARALLEL_AUTOMATIC_TUNING = TRUE
drop table clw_temp1;
create table clw_Temp1 parallel (degree 4) as select * from clw_temp;
49.797
drop table clw_temp1;
create table clw_Temp1 parallel (degree 2) as select * from clw_temp;
36.359 APPEND
Append 提示告诉Oracle 使用快速机制来插入数据,和nologging会有更好的效果
If a table or an index is specified with nologging, this hint applied
with an insert statement produces a direct path insert which reduces generation of redo.
insert /*+APPEND */ into clw_temp1 select * from clw_temp;
44.687
NOLOGGING
在归档的模式下是有用的 drop table clw_temp1;
create table clw_Temp1 as select * from clw_temp;
45.047
综合使用各种提示优化
Create table clw_temp1 as select * from clw_temp1 where rownum<1 nologging;
insert /*+APPEND parallel (degree 2) */ into clw_temp1 select * from clw_temp
38.922
从这里看出append 和nologging和parallel结合使用对效果提高是蛮大的
create table CLW_TEMP1 unrecoverable
parallel (degree 2) as select * from clw_temp nologging
14.797
看看用时14.797 堪称经典,与普通方法的执行时间相比,简直是天壤之别
导入导出技术
可以使用Oracle IMP/EMP
相关推荐
NULL 博文链接:https://wodeguozili.iteye.com/blog/2151906
oracle复制表
Oracle高级复制,也称为对称复制,第一次是在Oracle 7.1.6版本中出现的,在这之前的Oracle版本中,Oracle数据复制方法仅有只读快照形式的基本复制一种方法。Oracle作为数据库平台,并且有的项目使用到了Oracle的...
ORACLE 数据复制技术
oracle capture oracle cdc 流复制 数据迁移
oracle11g数据库,如何复制数据库。详细解说。RMAN支持两种类型复制:活动数据库复制和基于备份的复制,主要用来建立测试库。分别进行测试
通过Oracle的流复制实现数据库之间的同步
多年前写的复制目标数据库指定表的数据到本地表。 程序丢了可惜,分享下。 执行存储过程,通过指定目标数据库登录信息,动态生成dblink,打开游标,按批次插入本地指定表中,每批次1万条数据。同步记录和日志信息写...
Oracle 数据库对称复制实施手册
流复制主要是利用ORACLE的归档日志,进行增量备份来实现的,不仅可以配置只复制某些表,还可以配置仅复制某些表上的ddl或dml。可以复制到表,用户,数据库级别。 高级复制主要是基于触发器的原理来触发数据同步的...
我整理的oracle高级复制文档,包括advanced replication初步研究,Oracle 高级数据复制案例,Oracle数据库中高级复制的功能介绍,Oracle高级复制维护中要注意的方面,使用高级复制时清除Deferred Queue的办法
Oracle数据库在windows上的复制方法。
oracle高级复制应用的实例及物化视图复制和多主体复制的具体配置
Oracle 白皮书 ADG 异步复制技术..
Oracle Sreams 流复制技术是一种数据库复制技术。利用数据流可实现数据库 之间或数据库内部的数据和事件的共享。Oracle Streams 是提高数据库可用性, 构建灾难备份系统以及实现数据库分布的理想的技术解决方案。...
Oracle 白皮书 ADG 同步复制技术.
oracle高级复制 讲述如何培置oracle高级复制
1. 复制表结构及其数据: 代码如下:create table table_name_new as select * from table_name_old2. 只复制表结构: 代码如下:create table table_name_new as select * from table_name_old where 1=2;或者: 代码...
oracle数据库复制软件白皮书,产品功能及特点
实现SQL Server与Oracle之间数据复制.wmv