How to calculate PC_Free?
We have chain rows on a heavy used table- SAMSESSION;
SELECT name, value FROM v$sysstat WHERE name = 'table fetch continued row';
NAME VALUE
---------------------------------------------------------------- ----------
table fetch continued row 3.4889E+10
select CHAIN_CNT,num_rows,last_ANALYZED,AVG_ROW_LEN,pct_free,pct_used from dba_tables where table_name='SAMSESSION';
CHAIN_CNT LAST_ANALYZED AVG_ROW_LEN PCT_FREE PCT_USED
---------- ------------------- ----------- ---------- ----------
4299492 2009.09.07_04:03:59 150 10
SELECT SUM(data_length) FROM dba_tab_columns t WHERE t.table_name='SAMSESSION';
SUM(DATA_LENGTH)
----------------
484
We will move the table SAMSESSION. But before of the moving we intend to increase the value of the PCT_FREE.
SELECT name, value FROM v$sysstat WHERE name = 'table fetch continued row';
NAME VALUE
---------------------------------------------------------------- ----------
table fetch continued row 3.4889E+10
select CHAIN_CNT,num_rows,last_ANALYZED,AVG_ROW_LEN,pct_free,pct_used from dba_tables where table_name='SAMSESSION';
CHAIN_CNT LAST_ANALYZED AVG_ROW_LEN PCT_FREE PCT_USED
---------- ------------------- ----------- ---------- ----------
4299492 2009.09.07_04:03:59 150 10
SELECT SUM(data_length) FROM dba_tab_columns t WHERE t.table_name='SAMSESSION';
SUM(DATA_LENGTH)
----------------
484
We will move the table SAMSESSION. But before of the moving we intend to increase the value of the PCT_FREE.
0