資料字典管理表空間 & 本地管理表空間 轉換
阿新 • • 發佈:2019-01-05
方法一
- 遷移表
alter table XXX move to tablespace XXXX; - 然後重建索引,是用的最多且能徹底消除碎片的方式 。
方法二
- exp/imp方法,可能是非常耗費時間的。
方法三
- 轉換為本地管理表空間
DBMS_SPACE_ADMIN.TABLESPACE_MIGRATE_TO_LOCAL - 轉換為資料字典管理表空間
DBMS_SPACE_ADMIN.TABLESPACE_MIGRATE_FROM_LOCAL - 注意:
- 在轉換SYSTEM表空間前,保證其他表空間已經轉換完成。如果先轉換SYSTEM表空間,則其他表空間會處於只讀模式。
- dbms_space_admin.tablespace_migrate_to_local可聯機使用,使用者可以修改資料,但是DML若要分配一個新區,則在轉換完成前會處於阻塞狀態。
- 如果使用 dbms_space_admin 將表空間從字典管理轉換為本地管理,但沒有切換到自動段空間管理。所有字典管理的表空間都使用預設的段空間管理方式,並且在轉換為本地管理時,不能更改為自動段空間管理。
- 若當前字典管理表空間存在空間碎片,使用 dbms_space_admin不能進行消除。