分区表的一个分区,实际使用4262个块,而系统扩展分配了366592个块,系统监控显示,小于5分钟内空间扩展了3.5个G,导致分区所在的表空间被撑爆!
数据库版本:Release 10.2.0.4.0
1、实际使用的块查询:
select fno,rbn,count(0) from (select dbms_rowid.rowid_relative_fno(rowid) fno,dbms_rowid.rowid_block_number(rowid) rbn,dbms_rowid.rowid_row_number(rowid) rrn from table_name partition(part_17) ) tab group by fno,rbn ;
查询结果:4262
2、系统扩展分配的块查询:
select sum(BLOCKS) from dba_extents where segment_name='TABLE_NAME' AND PARTITION_NAME='PART_17';
查询结果:366592
3、这个表的记录数:
select count(0) from TABLE_NAME partition(part_17);
COUNT(0)
----------
110656----每行平均长度265个字节
4、dba_segments记录
select t.segment_name,t.partition_name,t.BYTES/1024/1024/1024,t.blocks*8/1024/1024 from dba_segments t where t.segment_name='T_INFO_ACCOUNT' and t.PARTITION_NAME='PART_17';
T_INFO_ACCOUNT PART_17 2.796875 2.796875
5、DBA_TAB_MODIFICATIONS记录:
SQL> SELECT * FROM DBA_TAB_MODIFICATIONS where table_name = 'T_INFO_ACCOUNT' AND PARTITION_NAME='PART_17';
TABLE_OWNER TABLE_NAME PARTITION_NAME SUBPARTITION_NAME INSERTS UPDATES DELETES TIMESTAMP TRU DROP_SEGMENTS
------------------------------ ------------------------------ ------------------------------ ------------------------------ ---------- ---------- ---------- ------------------- --- -------------
BTUPAYPROD T_INFO_ACCOUNT PART_17 1891 17237 0 2013/04/04 06:58:03 NO 0
6、DBA_TAB_PARTITIONS记录:
SQL> select * from dba_tab_partitions where table_name = 'T_INFO_ACCOUNT' AND PARTITION_NAME='PART_17';
TABLE_OWNER TABLE_NAME COM PARTITION_NAME SUBPARTITION_COUNT HIGH_VALUE HIGH_VALUE_LENGTH PARTITION_POSITION TABLESPACE_NAME PCT_FREE PCT_USED INI_TRANS MAX_TRANS INITIAL_EXTENT NEXT_EXTENT MIN_EXTENT MAX_EXTENT PCT_INCREASE FREELISTS FREELIST_GROUPS LOGGING COMPRESS NUM_ROWS BLOCKS EMPTY_BLOCKS AVG_SPACE CHAIN_CNT AVG_ROW_LEN SAMPLE_SIZE LAST_ANALYZED BUFFER_ GLO USE
------------------------------ ------------------------------ --- ------------------------------ ------------------ -------------------------------------------------------------------------------- ----------------- ------------------ ------------------------------ ---------- ---------- ---------- ---------- -------------- ----------- ---------- ---------- ------------ ---------- --------------- ------- -------- ---------- ---------- ------------ ---------- ---------- ----------- ----------- ------------------- ------- --- ---
BTUPAYPROD T_INFO_ACCOUNT NO PART_17 0 '420000' 8 17 TBS_CUSTOMER_ACCOUNT_DATA01 10 1 255 65536 1 2147483645 YES DISABLED 108860 4150 74 1014 0 268 23964 2013/03/27 04:23:55 DEFAULT NO NO
SQL>
7、dbms_space.space_usage确认:
declare
v_unformatted_blocks number;
v_unformatted_bytes number;
v_fs1_blocks number;
v_fs1_bytes number;
v_fs2_blocks number;
v_fs2_bytes number;
v_fs3_blocks number;
v_fs3_bytes number;
v_fs4_blocks number;
v_fs4_bytes number;
v_full_blocks number;
v_full_bytes number;
begin
dbms_space.space_usage ('&OWNER', '&TABNAME','TABLE PARTITION', v_unformatted_blocks,
v_unformatted_bytes, v_fs1_blocks, v_fs1_bytes, v_fs2_blocks, v_fs2_bytes,
v_fs3_blocks, v_fs3_bytes, v_fs4_blocks, v_fs4_bytes, v_full_blocks, v_full_bytes, '&PARTNAME');
dbms_output.put_line('Unformatted Blocks = '||v_unformatted_blocks);
dbms_output.put_line('FS1 Blocks = '||v_fs1_blocks);
dbms_output.put_line('FS2 Blocks = '||v_fs2_blocks);
dbms_output.put_line('FS3 Blocks = '||v_fs3_blocks);
dbms_output.put_line('FS4 Blocks = '||v_fs4_blocks);
dbms_output.put_line('Full Blocks = '||v_full_blocks);
end;
/
Unformatted Blocks = 360827
FS1 Blocks = 3
FS2 Blocks = 2
FS3 Blocks = 12
FS4 Blocks = 758
Full Blocks = 4147
PL/SQL procedure successfully completed.
8、dba_tables碎片化情况:
SELECT TABLE_NAME , (BLOCKS *8192 / 1024/1024 ) - (NUM_ROWS*AVG_ROW_LEN/1024/1024)
"Data lower than HWM in MB" FROM DBA_TABLES WHERE UPPER(owner) =UPPER('&OWNER') order by 2 desc;
TABLE_NAME Data lower than HWM in MB
------------------------------ -------------------------
T_INFO_ACCOUNT 1382.59251
9、表空间使用情况
select tablespace_name, allocated_space,used_space,reclaimable_space from table(dbms_space.asa_recommendations('TRUE', 'TRUE', 'ALL'));
TABLESPACE_NAME ALLOCATED_SPACE USED_SPACE RECLAIMABLE_SPACE
------------------------------ --------------- ---------- -----------------
TBS_CUSTOMER_ACCOUNT_DATA01 2906192651 2428736597 477456054
SQL> select segment_name,sum(bytes) from dba_extents t where t.tablespace_name='TBS_CUSTOMER_ACCOUNT_DATA01' group by segment_name;
SEGMENT_NAME SUM(BYTES)
------------------------------ ----------
T_INFO_CUSTOMER 2615148544
T_INFO_ACCOUNT 5678039040----这地方有问题,具体到那个表
SYS_LOB0000191670C00039$$ 524288
SYS_IL0000191670C00039$$ 524288
SQL> select segment_name,sum(bytes) from dba_extents t where t.tablespace_name='TBS_CUSTOMER_ACCOUNT_DATA02' group by segment_name;
SEGMENT_NAME SUM(BYTES)
------------------------------ ----------
T_INFO_CUSTOMER 3002073088
T_INFO_ACCOUNT 2768240640
SYS_LOB0000191670C00039$$ 524288
SYS_IL0000191670C00039$$ 524288
SQL> select segment_name,sum(bytes) from dba_extents t where t.tablespace_name='TBS_CUSTOMER_ACCOUNT_DATA03' group by segment_name;
SEGMENT_NAME SUM(BYTES)
------------------------------ ----------
I_CUSTOMER_P_PRODUCT 1207959552
T_INFO_CUSTOMER 2738880512
T_INFO_ACCOUNT 2690646016
SYS_LOB0000191670C00039$$ 524288
SYS_IL0000191670C00039$$ 524288
SQL> select segment_name,sum(bytes) from dba_extents t where t.tablespace_name='TBS_CUSTOMER_ACCOUNT_DATA04' group by segment_name;
SEGMENT_NAME SUM(BYTES)
------------------------------ ----------
T_INFO_CUSTOMER 2193620992
T_INFO_ACCOUNT 2337275904
SYS_LOB0000191670C00039$$ 524288
SYS_IL0000191670C00039$$ 524288
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/27573546/viewspace-757775/
,如需转载,请注明出处,否则将追究法律责任。