我的測試環(huán)境:Hp rp7410主機,Hp-unix11.11 OS,Oracle8.1.7.4的數(shù)據(jù)庫,一個有90張表大約100G的測試表空間TBS_TEST. 問題的提出:Oracle中在使用drop tablespace <tablespace_name> including contents;刪除數(shù)據(jù)字典管理的表空間時存在著很大的效率問題。 測試開始: 1、使用drop tablespace <tablespace_name> including contents;方式直接來刪除. SQL>set linesize 132 已用時間: 03: 35: 39.10 經(jīng)過我耐心的等待,花了三個半小時。 2、測一下同樣的表空間,把它轉換為Local方式管理的刪除效率。 a、把TBS_TEST通過恢復回來。 b、把TBS_TEST轉化為Local管理的方式。 SQL>set timing on 已用時間: 00: 06: 33.25 c、刪出這個空間。 SQL> drop tablespace TBS_TEST including contents 可以看到總共才花費了7分多鐘。 3、測一下同樣的表空間,先刪除其中的對象,然后再刪這個表空間的效率如何。 a、把TBS_TEST通過恢復回來。 b、形成刪除表的語句 SQL>set linesize 132 c、刪除表 這一步大約花費20秒 d、刪出這個空間。 SQL>set timing on 已用時間: 00: 07: 35.53
|