快速转移数据的方法(快速成形技术)
如果你要把ORACLE里的大量數據(80M以上)轉移到另外的用戶,另外的表空間里。可以用下面介紹的快速轉移 數據的方法。 一、建新表的方式 createtabletarget_tablenametablespacetarget_tablespace_namenologging pctfree10pctused60 storage(initial5Mnext5Mmin
如果你要把ORACLE里的大量數據(80M以上)轉移到另外的用戶,另外的表空間里。可以用下面介紹的快速轉移
數據的方法。
一、建新表的方式
create table target_tablename tablespace target_tablespace_name nologging
pctfree 10 pctused 60
storage(initial 5M next 5M minextents 1 maxextents unlimited pctincrease 0)
as select * from username.source_tablename where 條件;
注意事項: 新建的表沒有原來表的索引和默認值,
只有非空(not null)的約束素條件可以繼承過來,
其它的約束條件或索引需要重新建立.
二、直接插入的方法
INSERT /*+ APPEND */ INTO target_tablename
SELECT * FROM username.source_tablename where 條件;
COMMIT;
注意事項:
用INSERT /*+ APPEND */ 的方法會對target_tablename產生級別為6的獨占鎖,
如果運行此命令時還有對target_tablename的DML操作會排隊在它后面,
對OLTP系統在用的表操作是不合適的。
說明:這兩種方法轉移數據時沒有用SGA里數據緩沖區和事物處理的回滾段, 也不寫聯機事物日志,
就象裝載工具SQLLOAD一樣直接把數據寫到物理文件,速度是很快的。
在ORACLE8I以后的版本都可以使用.
總結
以上是生活随笔為你收集整理的快速转移数据的方法(快速成形技术)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 电池盖组件是指什么(电池针刺测试无意义)
- 下一篇: cad十字光标大小如何更改设置