Thursday, November 26, 2009

Maintain Partition & Subpartition table.

I have some table that have partition and sub partition in it.
so this is sample command to add partition & sub partition
( partition - use range partition, subpartition - use hash partition )

sqlplus > alter table XXX.LOG_QS add partition LOG_QS_PART01 values less than (to_date('06_DEC_2008','DD_MON_YYYY'))
PCTFREE 10 PCTUSED 40 INITRANS 20 MAXTRANS 255 TABLESPACE XXX_DATA
( SUBPARTITION LOG_QS_PART01_01 TABLESPACE LOG_QS_PART01_01,
SUBPARTITION LOG_QS_PART01_02 TABLESPACE LOG_QS_PART01_02,
SUBPARTITION LOG_QS_PART01_03 TABLESPACE LOG_QS_PART01_03,
SUBPARTITION LOG_QS_PART01_04 TABLESPACE LOG_QS_PART01_04,
SUBPARTITION LOG_QS_PART01_05 TABLESPACE LOG_QS_PART01_05,
SUBPARTITION LOG_QS_PART01_06 TABLESPACE LOG_QS_PART01_06,
SUBPARTITION LOG_QS_PART01_07 TABLESPACE LOG_QS_PART01_07,
SUBPARTITION LOG_QS_PART01_08 TABLESPACE LOG_QS_PART01_08,
SUBPARTITION LOG_QS_PART01_09 TABLESPACE LOG_QS_PART01_09,
SUBPARTITION LOG_QS_PART01_10 TABLESPACE LOG_QS_PART01_10);


then after add parition & subpartition of table, you should maintainance your index to use the right tablespace.

sqlplus >
alter index dmc.LOG_QS_idx01 rebuild SUBPARTITION LOG_QS_PART01_01 TABLESPACE INDX_LOG_QS_PART01_01;
alter index dmc.LOG_QS_idx01 rebuild SUBPARTITION LOG_QS_PART01_02 TABLESPACE INDX_LOG_QS_PART01_02;
alter index dmc.LOG_QS_idx01 rebuild SUBPARTITION LOG_QS_PART01_03 TABLESPACE INDX_LOG_QS_PART01_03;
alter index dmc.LOG_QS_idx01 rebuild SUBPARTITION LOG_QS_PART01_04 TABLESPACE INDX_LOG_QS_PART01_04;
alter index dmc.LOG_QS_idx01 rebuild SUBPARTITION LOG_QS_PART01_05 TABLESPACE INDX_LOG_QS_PART01_05;
alter index dmc.LOG_QS_idx01 rebuild SUBPARTITION LOG_QS_PART01_06 TABLESPACE INDX_LOG_QS_PART01_06;
alter index dmc.LOG_QS_idx01 rebuild SUBPARTITION LOG_QS_PART01_07 TABLESPACE INDX_LOG_QS_PART01_07;
alter index dmc.LOG_QS_idx01 rebuild SUBPARTITION LOG_QS_PART01_08 TABLESPACE INDX_LOG_QS_PART01_08;
alter index dmc.LOG_QS_idx01 rebuild SUBPARTITION LOG_QS_PART01_09 TABLESPACE INDX_LOG_QS_PART01_09;
alter index dmc.LOG_QS_idx01 rebuild SUBPARTITION LOG_QS_PART01_10 TABLESPACE INDX_LOG_QS_PART01_10;


== TaTsHuYa ==

No comments: