¸ÅÒª£º
OracleÊý¾Ý¿âÈÕ³£Î¬»¤ÖУ¬²»¿É±ÜÃâµÄ»áÓöµ½Êý¾Ý¿âËéƬÕûÀíµÄÎÊÌâ¡£Ëùν֪¼ºÖª±Ë°ÙÕ½°Ùʤ£¬Òª´¦ÀíËéƬÎÊÌâ¾Í±ØÐë´Ó¸ù±¾ÉÏÁ˽âÊý¾Ý¿âËéƬ¡£
±¾ÎÄ´ÓÊý¾Ý¿âËéƬµÄÓÉÀ´¡¢ËéƬ¶ÔϵͳµÄÓ°Ïì¡¢ËéƬ¼ÆËã¡¢ËéƬµÄÕûÀí¡¢ËéƬÕûÀíÔÚ¶ÌÏûϢϵͳÊý¾Ý¿âά»¤ÖеÄÓ¦ÓÃ×ÅÊÖϵͳµØ½éÉÜÁËOracleÊý¾Ý¿âËéƬÕûÀíµÄÏà¹Ø֪ʶ¡£
Êý¾Ý¿âµÄÐÔÄÜÓÅ»¯ÊÇÒ»Ïî¼¼Êõº¬Á¿¸ß£¬Í¬Ê±ÓÖÐèÒªÓÐ×ã¹»ÄÍÐÄ¡¢ÈÏÕæϸֵŤ×÷£¬¶ÔÊý¾Ý¿âËéƬµÄÒ»µã̽ÌÖ£¬Ï£ÍûÆðµ½Ò»¸öÅ×שÒýÓñµÄ×÷Óá£
Ò»¡¢OracleÊý¾Ý¿âËéƬµÄÓÉÀ´
´´½¨Ò»¸öÊý¾Ý¿âʱ£¬ÐèÒª¶à¸ö±í¿Õ¼ä£¨Tablespace£©£¬±í¿Õ¼äÓÉÂß¼¶Î£¨Segment£©×é³É£¬Èçϵͳ£¨System£©±í¿Õ¼ä,ÁÙʱ£¨Temporary£©±í¿Õ¼äµÈ¡£Ò»¸öÂß¼¶Î¿ÉÒÔ°üº¬¶à¸öÊý¾Ý·¶Î§£¨Extent£©ºÍÒ»¸ö»ò¶à¸ö×ÔÓÉ·¶Î§¿é£¬¼´×ÔÓɿռ䣨Free Space£©¡£
±í¿Õ¼ä¡¢¶Î¡¢·¶Î§¡¢×ÔÓÉ¿Õ¼äµÄÂß¼¹ØϵÈçÏ£º
µ±±í¿Õ¼äÖÐÉú³ÉÒ»¸ö¶Îʱ£¬½«´Ó±í¿Õ¼äÓÐЧ×ÔÓÉ¿Õ¼äÖÐΪÕâ¸ö¶ÎµÄ³õʼ·¶Î§·ÖÅä¿Õ¼ä¡£
µ±ÕâЩ³õʼ·¶Î§³äÂúÊý¾Ýʱ£¬¶Î»áÇëÇóÔö¼ÓÁíÒ»¸ö·¶Î§¡£
ÕâÑùµÄÀ©Õ¹¹ý³Ì»áÒ»Ö±¼ÌÐøÏÂÈ¥£¬Ö±µ½´ïµ½×î´óµÄ·¶Î§Öµ£¬»òÕßÔÚ±í¿Õ¼äÖÐÒѾûÓÐ×ÔÓÉ¿Õ¼äÓÃÓÚÏÂÒ»¸ö·¶Î§¡£
×îÀíÏëµÄ״̬¾ÍÊÇÒ»¸ö¶ÎµÄÊý¾Ý¿É±»´æÔÚµ¥Ò»µÄÒ»¸ö·¶Î§ÖС£ÕâÑù£¬ËùÓеÄÊý¾Ý´æ´¢Ê±¿¿½ü¶ÎÄÚÆäËüÊý¾Ý£¬²¢ÇÒÑ°ÕÒÊý¾Ý¿ÉÉÙÓÃһЩָÕë¡£
µ«ÊÇÒ»¸ö¶Î°üº¬¶à¸ö·¶Î§µÄÇé¿öÊÇ´óÁ¿´æÔڵģ¬Ã»ÓÐÈκδëÊ©¿ÉÒÔ±£Ö¤ÕâЩ·¶Î§ÊÇÏàÁÚ´æ´¢µÄ¡£
µ±ÒªÂú×ãÒ»¸ö¿Õ¼äÒªÇóʱ£¬Êý¾Ý¿â²»Ôٺϲ¢ÏàÁÚµÄ×ÔÓÉ·¶Î§£¨³ý·Ç±ðÎÞÑ¡Ôñ£©£¬¶øÊÇÑ°ÕÒ±í¿Õ¼äÖÐ×î´óµÄ×ÔÓÉ·¶Î§À´Ê¹Óá£
ÕâÑù½«Öð½¥ÐγÉÔ½À´Ô½¶àµÄÀëÉ¢µÄ¡¢·Ö¸ôµÄ¡¢½ÏСµÄ×ÔÓɿռ䣬¼´ËéƬ¡£
¶þ¡¢ËéƬ¶ÔϵͳµÄÓ°Ïì
Ëæ×Åʱ¼äÍÆÒÆ£¬»ùÓÚÊý¾Ý¿âµÄÓ¦ÓÃϵͳµÄ¹ã·ºÊ¹Ó㬲úÉúµÄËéƬ»áÔ½À´Ô½¶à£¬½«¶ÔÊý¾Ý¿âÓÐÒÔÏÂÁ½µãÖ÷ÒªÓ°Ï죺
2.1 µ¼ÖÂϵͳÐÔÄܼõÈõ
µ±ÒªÂú×ãÒ»¸ö¿Õ¼äÒªÇóʱ£¬Êý¾Ý¿â½«Ê×ÏȲéÕÒµ±Ç°×î´óµÄ×ÔÓÉ·¶Î§£¬¶ø"×î´ó"×ÔÓÉ·¶Î§Öð½¥±äС£¬ÒªÕÒµ½Ò»¸ö×ã¹»´óµÄ×ÔÓÉ·¶Î§ÒѱäµÃÔ½À´Ô½À§ÄÑ£¬´Ó¶øµ¼Ö±í¿Õ¼äÖеÄËÙ¶ÈÕÏ°£¬Ê¹Êý¾Ý¿âµÄ¿Õ¼ä·ÖÅäÓú·¢Ô¶ÀëÀíÏë״̬£»
2.2 ÀË·Ñ´óÁ¿µÄ±í¿Õ¼ä
¾¡¹ÜÓÐÒ»²¿·Ö×ÔÓÉ·¶Î§£¨Èç±í¿Õ¼äµÄpctincreaseΪ·Ç0£©½«»á±»SMON£¨ÏµÍ³¼à¿Ø£©ºǫ́½ø³ÌÖÜÆÚÐԵغϲ¢£¬µ«Ê¼ÖÕÓÐÒ»²¿·Ö×ÔÓÉ·¶Î§ÎÞ·¨µÃÒÔ×Ô¶¯ºÏ²¢£¬ÀË·ÑÁË´óÁ¿µÄ±í¿Õ¼ä¡£
Èý¡¢×ÔÓÉ·¶Î§µÄËéƬ¼ÆËã
ÓÉÓÚ×ÔÓÉ¿Õ¼äËéƬÊÇÓɼ¸²¿·Ö×é³É£¬È緶ΧÊýÁ¿¡¢×î´ó·¶Î§³ß´çµÈ£¬ÎÒÃÇ¿ÉÓÃFSFI--Free Space Fragmentation Index£¨×ÔÓÉ¿Õ¼äËéƬË÷Òý£©ÖµÀ´Ö±¹ÛÌåÏÖ£º
FSFI=100*SQRT(max(extent)/sum(extents))*1/SQRT(SQRT(count(extents)))
¿ÉÒÔ¿´³ö£¬FSFIµÄ×î´ó¿ÉÄÜֵΪ100£¨Ò»¸öÀíÏëµÄµ¥Îļþ±í¿Õ¼ä£©¡£Ëæ×Å·¶Î§µÄÔö¼Ó£¬FSFIÖµ»ºÂýϽµ£¬¶øËæ×Å×î´ó·¶Î§³ß´çµÄ¼õÉÙ£¬FSFIÖµ»áѸËÙϽµ¡£
Ò»ÏÂÓï¾ä¿ÉÒÔ·ÖÎöFSFIÖµ
select tablespace_name,sqrt(max(blocks)/sum(blocks))*
(100/sqrt(sqrt(count(blocks)))) FSFI
from dba_free_space
group by tablespace_name order by 1;
spool fsfi.rep;
±ÈÈ磬ÔÚijÊý¾Ý¿âÔËÐÐÓï¾ä£¬µÃµ½ÒÔÏÂFSFIÖµ£º
TABLESPACE_NAME FSFI
------------------------------ -------
RBS 74.06
SYSTEM 100.00
TEMP 22.82
TOOLS 75.79
USERS 100.00
USER_TOOLS 100.00
YDCX_DATA 47.34
YDCX_IDX 57.19
YDJF_DATA 33.80
YDJF_IDX 75.55
ͳ¼Æ³öÁËÊý¾Ý¿âµÄFSFIÖµ£¬¾Í¿ÉÒÔ°ÑËü×÷Ϊһ¸ö¿É±È²ÎÊý¡£ÔÚÒ»¸öÓÐ×Å×ã¹»ÓÐЧ×ÔÓɿռ䣬ÇÒFSFIÖµ³¬¹ý30µÄ±í¿Õ¼äÖУ¬ºÜÉÙ»áÓö¼ûÓÐЧ×ÔÓÉ¿Õ¼äµÄÎÊÌâ¡£µ±Ò»¸ö¿Õ¼ä½«Òª½Ó½ü¿É±È²ÎÊýʱ£¬¾ÍÐèÒª×öËéƬÕûÀíÁË¡£
ËÄ¡¢×ÔÓÉ·¶Î§µÄËéƬÕûÀí
µ±±í¿Õ¼äµÄpctincreaseֵΪ·Ç0£¬¿ÉÒÔ½«±í¿Õ¼äµÄȱʡ´æ´¢²ÎÊýpctincrease¸ÄΪ·Ç0£¬Ò»°ã½«ÆäÉèΪ1¡£ÈçÐÞ¸Ätemp±í¿Õ¼äµÄpctincreaseÊôÐÔ£º
alter tablespace temp default storage(pctincrease 1);
ÕâÑùSMON±ã»á½«×ÔÓÉ·¶Î§×Ô¶¯ºÏ²¢¡£
Ò²¿ÉÒÔÊÖ¹¤ºÏ²¢×ÔÓÉ·¶Î§£º
alter tablespace temp coalesce;
Îå¡¢ËéƬÕûÀíµÄÒ»¸öÀý×Ó
ÔÚÓ¦ÓÃÊý¾Ý¿âÖÐÖ´ÐвéѯÓï¾ä£º
select tablespace_name,sqrt(max(blocks)/sum(blocks))*(100/sqrt(sqrt(count(blocks)))) FSFI
from dba_free_space
group by tablespace_name
order by tablespace_name;
µÃµ½ÈçϽá¹û£º
TABLESPACE_NAME FSFI
------------------------------ ----------
DRSYS 100
INDX 100
RBS 100
SMSC_CENTER1 100
SMSC_CENTER2 100
SMSC_CENTER3 23.5800234
SMSC_CENTER4 32.9366634
SMSC_CENTER5 31.068619
SMSC_INDEX1 33.3362973
SMSC_INDEX2 32.2239775
SMSC_INDEX3 33.5800234
SMSC_INDEX4 32.9366634
SMSC_INDEX5 31.280485
SMSC_ROLL 100
SMSC_TEMP 100
SYSTEM 100
TEMP 22.3165739
TOOLS 100
USERS 100
¸ù¾Ý·ÖÎö½á¹û£¬ÕûÀíSMSC_CENTER3
ÊÖ¹¤ºÏ²¢×ÔÓÉ·¶Î§£º
alter tablespace SMSC_CENTER3 coalesce;
ÕûÀíºóµÄÇé¿ö
TABLESPACE_NAME FSFI
------------------------------ ----------
DRSYS 100
INDX 100
RBS 100
SMSC_CENTER1 100
SMSC_CENTER2 100
SMSC_CENTER3 100
SMSC_CENTER4 32.9366634
SMSC_CENTER5 31.068619
SMSC_INDEX1 33.3362973
SMSC_INDEX2 32.2239775
SMSC_INDEX3 33.5800234
SMSC_INDEX4 32.9366634
SMSC_INDEX5 31.280485
SMSC_ROLL 100
SMSC_TEMP 100
SYSTEM 100
TEMP 22.3165739
TOOLS 100
USERS 100