更改業務表空間和索引表空間方法

修改表所在的表空間以下所示:oracle

A、單個修改:ui

alter table TABLE_NAME(表名) move tablespace TABLESPACENAME(其餘表空間名) spa

B、批量修改索引

①查詢當前用戶下的全部表 table

select 'alter table '|| table_name ||' move tablespace tablespacename;' from user_all_tables; select

②生成腳本——執行全部查詢出的語句數據類型

C、補充:語法

select 'alter table '|| table_name ||' move tablespace SMS_WORK;' from user_all_tables  where  tablespace_name !='SMS_WORK';數據

 

修改索引所在的表空間以下所示:腳本

A、oracle移動普通索引到其餘表空間語法:(單個修改)

       alter index 索引名 rebuild tablespace 其餘表空間;

例:alter index ID rebuild tablespace GP_INDEX;

B、使用腳本執行查詢的結果,這樣就能夠批量處理

      ①查詢當前用戶下的全部索引:

select 'alter index '|| index_name ||' rebuild tablespace GP_INDEX(索引表空間);' from user_indexes;

      ②生成腳本——執行全部查詢出的語句

注意:

若是索引的所在列的數據類型爲lob,則沒法遷移索引,遷移時會報錯:沒法以數據類型 LOB 的表達式建立索引

相關文章
相關標籤/搜索