表、索引遷移表空間alter table move
今天將一個系統從開發環境遷移到生產環境時,發現了了個使用者小問題:
開發環境下的資料庫使用者都是具有dba角色,生產環境就嚴格了許多。遷移完成後報告說××表空間不夠了。而這個表空間並不是此使用者的預設表空間,它根本就沒許可權使用這個表空間的。立即想到可能是這個使用者是將表建在了別的表空間了。一檢查,果然發現有部分表的表空間不對。
那就將這些表遷移回應該的表空間。
alter table tb_name move tablespace ts_name;
此命令後需要rebuild index
alter index idx_name rebuild tablespace ts_name;
注意:
1。如果表上有主鍵,則主鍵建立的唯一索引也需要rebuild
2.。在delete掉大表的資料後執行alter table tb_name move命令可以調整HWM、回收了extent
3。這種方式對long 或 long raw 欄位不適用,但可以用exp/imp的方法.
select extents,segment_name from dba_segments
where SEGMENT_NAME='TEST' and WNER='×××';
開發環境下的資料庫使用者都是具有dba角色,生產環境就嚴格了許多。遷移完成後報告說××表空間不夠了。而這個表空間並不是此使用者的預設表空間,它根本就沒許可權使用這個表空間的。立即想到可能是這個使用者是將表建在了別的表空間了。一檢查,果然發現有部分表的表空間不對。
那就將這些表遷移回應該的表空間。
alter table tb_name move tablespace ts_name;
此命令後需要rebuild index
alter index idx_name rebuild tablespace ts_name;
注意:
1。如果表上有主鍵,則主鍵建立的唯一索引也需要rebuild
2.。在delete掉大表的資料後執行alter table tb_name move命令可以調整HWM、回收了extent
3。這種方式對long 或 long raw 欄位不適用,但可以用exp/imp的方法.
select extents,segment_name from dba_segments
where SEGMENT_NAME='TEST' and WNER='×××';
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/32939/viewspace-580274/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- alter table table_name move ; 在自身表空間move是如何操作的?
- table/index/LOBINDEX遷移表空間Index
- Oracle中表空間、表、索引的遷移Oracle索引
- [轉移]ORACLE MOVE 表空間Oracle
- 表空間遷移
- 遷移表空間
- ORACLE表批量遷移表空間Oracle
- 【遷移】表空間transport
- RMAN遷移表空間
- 遷移SYSTEM表空間為本地管理表空間
- ORACLE MOVE表空間Oracle
- 遷移表到新的表空間
- 跨平臺表空間遷移(傳輸表空間)
- expdp/impdp 遷移表空間
- MySQL 遷移表空間,備份單表MySql
- 基於可傳輸表空間的表空間遷移
- lob欄位表空間遷移
- Oracle 不同平臺間表空間遷移Oracle
- 表空間遷移辦法補充
- 使用RMAN簡單遷移表空間
- 資料庫物件遷移表空間資料庫物件
- 分割槽表對應的表空間遷移案例
- 【資料遷移】使用傳輸表空間遷移資料
- 線上遷移表空間資料檔案
- 不同使用者,不同表空間遷移
- Oracle 表空間資料檔案遷移Oracle
- 【SQL】【指令碼】遷移當前使用者下所有表和索引到新表空間SQL指令碼索引
- 從system/sysaux空間轉移TABLE&Index到其它表空間UXIndex
- alter table move 和 alter table shrink space的區別
- 將表遷移至其他表空間
- Oracle表移動表空間Oracle
- oracle 表移動表空間Oracle
- DB2 ADMIN_MOVE_TABLE 表移動DB2
- Oracle 12cbigfile表空間物件遷移Oracle物件
- mysql共享表空間擴容,收縮,遷移MySql
- InnoDB資料表空間檔案平滑遷移
- 利用PLSQL實現表空間的遷移(一)SQL
- 利用PLSQL實現表空間的遷移(二)SQL