Oracle 普通Table進行Reorg
建立pp1例項表.
SQL> create table pp1 as select * from pp;
Table created.
SQL> create index pp1_index on pp1(id);
Index created.
SQL> execute dbms_stats.gather_table_stats('scott','pp1');
PL/SQL procedure successfully completed.
SQL> select count(*) from pp1;
COUNT(*)
----------
10000000
現在開始重建table。
1.將原來pp1 table的statistics export出來
SQL> exec dbms_stats.create_stat_table('scott','stat_table');
PL/SQL procedure successfully completed.
SQL> exec dbms_stats.export_table_stats('scott','pp1',null,'stat_table');
PL/SQL procedure successfully completed.
2.將pp1 table的資料insert到pp1_copy上
SQL> edit
Wrote file afiedt.buf
1 create table pp1_copy
2 tablespace users
3 nologging
4 parallel 2
5 as
6* select /*+parallel(a,2)*/ * from pp1 a where dt>to_date('2014/01/01','yyyy/mm/dd')
SQL>
SQL> /
Table created.
3.在pp1_copy上建立 和在pp1上相同的index
SQL> create index pp1_copy_index on pp1_copy(id) nologging parallel 2;
Index created.
4.更改table,index為logging,noparallel模式
SQL> alter table pp1_copy logging noparallel;
Table altered.
SQL> alter index pp1_copy_index logging noparallel;
Index altered.
5.刪除原來的pp1 table
SQL> drop table pp1 purge;
Table dropped.
6.將pp1_copy table和index rename為pp1以及相應的index
SQL> alter table pp1_copy rename to pp1;
Table altered.
SQL> alter index pp1_copy_index rename to pp1_index;
Index altered.
7.將export的statistics import到pp1中
SQL> exec dbms_stats.import_table_stats(ownname=>'scott',tabname=>'pp1',stattab=>'stat_table');
PL/SQL procedure successfully completed.
8.編譯原來存在package,view,procedure
alter package package_name compile;
alter procedure procedure_name compile;
alter view view_name compile;
=========================================================================================
*其中可以將pp1先rename為其他table明,然後再做操作。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24237320/viewspace-1852372/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle 普通table 轉換為partition tableOracle
- REORG TABLE命令最佳化資料庫效能資料庫
- JavaScript table表格行進行刪除和新增JavaScript
- 對table的操作進行監控
- HTML使用div和table進行佈局HTML
- [zt] DB2日常維護——REORG TABLE命令優化資料庫效能DB2優化資料庫
- 利用ORACLE DBMS_REDEFINITION包進行普通表到分割槽表的線上轉換Oracle
- db2 reorg,runstatsDB2
- js操作 新增刪除table行,並進行重新整理JS
- [Oracle] Partition table exchange Heap tableOracle
- 使用Typescript進行結構性開發(建立Table)TypeScript
- 【Oracle】並行等待之PX Deq: Table Q NormalOracle並行ORM
- oracle temporary tableOracle
- oracle shrink tableOracle
- Oracle Table LocksOracle
- Alter table for ORACLEOracle
- Oracle Table FunctionOracleFunction
- pt-table-checksum進行主從資料校驗
- Oracle DBMS_STATS.SET_TABLE_STATS 模擬大資料量進行 SQL 除錯和優化Oracle大資料SQL除錯優化
- oracle 之 控制oracle RAC 進行並行運算Oracle並行
- oracle cache table(轉)Oracle
- Oracle table selectOracle
- Oracle:TABLE MONITORINGOracle
- oracle之nalyze tableOracle
- Oracle ASM Allocation TableOracleASM
- oracle cache table(1)Oracle
- oracle cache table(3)Oracle
- oracle cache table(2)Oracle
- oracle cache table(5)Oracle
- oracle cache table(4)Oracle
- oracle cache table(6)Oracle
- Oracle DBMS_STATS.SET_TABLE_STATS 模擬大資料量進行 SQL 除錯和最佳化Oracle大資料SQL除錯
- Oracle Exadata的TABLE ACCESS STORAGE FULL執行計劃Oracle
- Oracle10g 每晚定時對變化資料Table進行分析的一些問題Oracle
- Oracle -- 深入體會PLAN_TABLE、PLAN_TABLE$Oracle
- Oracle --- PLAN_TABLE$和PLAN_TABLE區別Oracle
- Oracle ASM Partnership and Status TableOracleASM
- Oracle ASM Free Space TableOracleASM