ºìÁªLinuxÃÅ»§
Linux°ïÖú

¼òµ¥Ì¸Ì¸Oracle 10GÖеÄÉÁ»Ø»Ö¸´Çø

·¢²¼Ê±¼ä:2006-11-10 00:36:01À´Ô´:ºìÁª×÷Õß:Joyful
1.1. ºÎΪÉÁ»Ø»Ö¸´Çø

Oracle 10g ÓÐÒ»Ïîй¦ÄܳÆΪ£º×Ô¶¯µÄ»ùÓÚ´ÅÅ̵ı¸·ÝÓë»Ö¸´( Automatic Disk-Based Backup and Recovery )¡£ÊµÏָù¦ÄܵĻù´¡Îª±¾ÎÄÒª½²ÊöµÄÉÁ»Ø»Ö¸´Çø( Flash Recovery Area )¡£ÉÁ»Ø»Ö¸´ÇøÊÇ Oracle 10g ÖеÄÐÂÊÂÎï¡£¼òµ¥µÄ˵£¬ÉÁ»Ø»Ö¸´ÇøÊÇÒ»¿éÓÃÒÔ´æ´¢»Ö¸´Ïà¹ØµÄÎļþµÄ´æ´¢¿Õ¼ä¡£

ÔÊÐíÓû§¼¯Öд洢ËùÓлָ´Ïà¹ØµÄÎļþ¡£

ÉÁ»Ø»Ö¸´Çø¿ÉÒÔ·ÅÔÚÈçϼ¸ÖÖ´æ´¢ÐÎʽÉÏ£º

?Ŀ¼

?Ò»¸öÎļþϵͳ

?×Ô¶¯´æ´¢¹ÜÀí(ASM)´ÅÅÌ×é

ÔÚ RAC »·¾³ÖÐ,Õâ¸ö¸ÃλÖñØÐëΪ ¼¯ÈºÎļþϵͳ (cluster file system) »òÊÇ ASM ´ÅÅÌ×éÒà»òÊÇͨ¹ý NFS ¿ØÖƵÄÎļþ¹²ÏíĿ¼£¬»¹Òª×¢ÒâµÄÊÇ£¬ËùÓÐʵÀýµÄλÖúͲÙ×÷ϵͳµÄ´ÅÅÌÏÞ¶î (disk quota) ±ØÐëÒ»Ö¡£

Èçϼ¸ÖÖÎļþ¿ÉÒԷŵ½ÉÁ»Ø»Ö¸´ÇøÖÐ:

?¿ØÖÆÎļþ

?¹éµµµÄÈÕÖ¾Îļþ(×¢£ºOracle ÊÖ²áÉÏËù˵µÄÔÚÉ趨flash recovery areaÖ®ºó£¬LOG_ARCHIVE_DEST_10µÄÖµ½«×Ô¶¯É趨Ϊflash recovery areaµÄλÖã¬Õâ¸ö±ä»¯ÔÚ±ÊÕß²âÊÔ¹ý³ÌÖй۲첻µ½)

?ÉÁ»ØÈÕÖ¾

?¿ØÖÆÎļþºÍ SPFILE ×Ô¶¯±¸·Ý

?RMAN ±¸·Ý¼¯

?Êý¾ÝÎļþ¿½±´

1.2. ΪºÎÒªÓÃÉÁ»Ø»Ö¸´Çø?

ÈçÇ°ËùÊö£¬ÉÁ»Ø»Ö¸´ÇøÌṩÁËÒ»¸ö¼¯Öл¯µÄ´æ´¢ÇøÓò£¬ºÜ´ó³Ì¶ÈÉϼõСÁ˹ÜÀí¿ªÏú¡£ÕâÊÇÆä×îÖ÷ÒªµÄÓŵ㡣Óë RMAN ½áºÏʹÓÿÉÒÔ½øÐпìËÙ»Ö¸´¡£

½üÄêÀ´Ëæ×Å´æ´¢¼¼ÊõµÄ·¢Õ¹£¬µ¥¸ö´ÅÅ̵Ĵ洢ÄÜÁ¦ÒѾ­¼ÓÇ¿¡£Õâʹ×Ô¶¯µÄ»ùÓÚ´ÅÅ̵ı¸·ÝÓë»Ö¸´µÄ¼¼ÊõʵÏÖ³ÉΪ¿ÉÄÜ¡£¶øÉÁ»Ø»Ö¸´ÇøÇ¡ÊÇ»ùÓÚ´ÅÅ̵ı¸·ÝÓë»Ö¸´µÄ»ù´¡¡£°ÑÉÁ»Ø»Ö¸´ÇøºÍOMF Óë ASM ½áºÏÔËÓÿ´ÆðÀ´ÊDZȽÏÍêÃÀµÄ·½°¸¡£µ±È»£¬²»¿É·ñÈϵÄÊÇ£¬×Ô¶¯±¸·Ý»Ö¸´¼¼Êõ»¹Ô¶Ô¶²»¹»³ÉÊì¡£

1.3. É趨ÉÁ»Ø»Ö¸´Çø

Èç¹ûÄúʹÓÃDBCA´´½¨µÄÊý¾Ý¿â£¬ÔÚ°²×°Ê±¿ÉÒÔÉ趨ÉÁ»Ø»Ö¸´ÇøµÄλÖÃÒÔ¼°´óС(µã»÷ÕâÀï²é¿´°²×°½Øͼ)--ÕâÒ²ÊÇ Oracle 10g OUI µÄй¦ÄÜÖ®Ò»¡£Èç¹ûÔÚ¿ªÊ¼µÄʱºòûÓÐÆôÓÃÉÁ»Ø»Ö¸´Çø£¬¿ÉÒÔͨ¹ýÈçÏ·½Ê½É趨¡£µ÷ÕûÈçÏÂÁ½¸ö¶¯Ì¬³õʼ»¯²ÎÊý(ÎÞÐèÖØÐÂÆô¶¯ÊµÀý)£º


SQL> ALTER SYSTEM SET db_recovery_file_dest_size=2g SCOPE=BOTH;
System altered.
SQL>
SQL> ALTER SYSTEM SET
db_recovery_file_dest=¡¯/u01/app/oracle/flash_recovery_area¡¯
2 SCOPE=BOTH;
System altered.

SQL>


Ö®ºó²é¿´Ëù×÷µÄÐÞ¸ÄÊÇ·ñÉúЧ£º


SQL> SHOW parameter db_recovery_file_dest
NAME TYPE VALUE
---------------------------------------------------------------------------
db_recovery_file_dest string /u01/app/oracle/flash_recovery_area
db_recovery_file_dest_size big integer 2G
SQL>


ÈçÉÏËùʾ£¬ÎÒÃÇÉ趨ÁËÉÁ»Ø»Ö¸´Çø£¬Î»ÖÃÔÚ /u01/app/oracle/flash_recovery_area£¬ÉÏÏÞΪ2G¡£Èç¹ûÒª³·ÏúÉÁ»Ø»Ö¸´Çø£¬°Ñ³õʼ»¯²ÎÊý DB_RECOVERY_FILE_DEST µÄÖµÇå¿Õ¼´¿É¡£

×¢Ò⣺DB_RECOVERY_FILE_DEST_SIZE Ö»ÓÐÔÚ DB_RECOVERY_FILE_DEST Çå¿ÕÖ®ºó²Å¿ÉÒÔÇå¿Õ¡£

³õʼ»¯²ÎÊý db_recovery_file_dest_size µÄÉ趨ÓÐÒ»µãµãÐèҪעÒâµÄµØ·½£º

?ÎļþµÄµÚ0¿éºÍ²Ù×÷ϵͳÊý¾Ý¿éÍ·µÄ¿Õ¼ä´óС²»°üº¬ÔÚÄÚ

?¸Ã²ÎÊý²¢²»´ú±íʵ¼ÊÕ¼ÓõĿռä´óС¡£Èç¹û¿Õ¼ä±»Ñ¹Ëõ¡¢¾µÏñ¡¢RAID µÄ»°£¬¸Ã²ÎÊýµÄÖµÒâÒåÊDz»Ò»ÑùµÄ

1.4. ¹ÜÀí²¢¼à¿ØÉÁ»Ø»Ö¸´Çø

ÎÒÃÇÏÈ¿´¿´ÉÁ»Ø»Ö¸´ÇøÄÚµÄÎļܽṹ²ã´Î


SQL> host tree /u01/app/oracle/flash_recovery_area
/u01/app/oracle/flash_recovery_area
|-- DEMO
| |-- archivelog
| | |-- 2004_12_07
| | | |-- o1_mf_1_10_0vbwz2fm_.arc
| | | |-- o1_mf_1_11_0vc1yj14_.arc
| | | |-- o1_mf_1_12_0vc6vvws_.arc
| | | |-- o1_mf_1_13_0vcbv6cg_.arc
| | | |-- o1_mf_1_14_0vchlxb3_.arc
| | | |-- o1_mf_1_15_0vcnh2bz_.arc
| | | |-- o1_mf_1_5_0vbk8goo_.arc
| | | |-- o1_mf_1_6_0vbkq6dk_.arc
| | | |-- o1_mf_1_7_0vbktl5f_.arc
| | | |-- o1_mf_1_8_0vbo97xp_.arc
- 62 -
| | | `-- o1_mf_1_9_0vbrrlo6_.arc

| | `-- 2004_12_08
| | |-- o1_mf_1_16_0vcnyqvf_.arc
| | |-- o1_mf_1_17_0vcp58bj_.arc
| | |-- o1_mf_1_18_0vcv4qxb_.arc
| | |-- o1_mf_1_19_0vczcsl0_.arc
| | |-- o1_mf_1_20_0vd34svw_.arc
| | |-- o1_mf_1_21_0vd7tg4h_.arc
| | |-- o1_mf_1_22_0vddq7lc_.arc
| | |-- o1_mf_1_23_0vdk0nbh_.arc
| | |-- o1_mf_1_24_0vdojjky_.arc
| | |-- o1_mf_1_25_0vdtg1rq_.arc
| | |-- o1_mf_1_26_0vdz23h2_.arc
| | |-- o1_mf_1_27_0vf3nlnw_.arc
| | |-- o1_mf_1_28_0vf6hon5_.arc
| | |-- o1_mf_1_29_0vf867lt_.arc
| | |-- o1_mf_1_30_0vf86pkg_.arc
| | `-- o1_mf_1_31_0vfjphqm_.arc
| `-- backupset
| |-- 2004_12_07
| | |-- o1_mf_ncsn1_TAG20041207T150715_0vboq7kv_.bkp
| | `-- o1_mf_nnnd1_TAG20041207T150715_0vboo3t2_.bkp
| `-- 2004_12_08
| |-- o1_mf_ncsnf_TAG20041208T161219_0vffxv2n_.bkp
| |-- o1_mf_ncsnf_TAG20041208T165456_0vfjcvgl_.bkp
| `-- o1_mf_nnndf_TAG20041208T161219_0vffv40q_.bkp
`-- tracking.dbf
7 directories, 33 files
ÎÄÕÂÆÀÂÛ

¹²ÓÐ 1 ÌõÆÀÂÛ

  1. Joyful ÓÚ 2006-11-10 00:36:20·¢±í:

    ÉÁ»Ø»Ö¸´ÇøÖÐÌí¼Ó»òɾ³ýÎļþµÈ±ä»¯¶¼½«¼Ç¼ÔÚÊý¾Ý¿âµÄ alert ÈÕÖ¾ÖУ¬Oracle 10g Ò²Õë¶Ô¸ÃÐÂÌØÐÔÌṩÁËÒ»¸öеÄÊÓͼ£¬ DBA_OUTSTANDING_ALERTS£¬Í¨¹ý¸ÃÊÓͼ¿ÉÒԵõ½Ïà¹ØµÄÐÅÏ¢¡£

    DBA_OUTSTANDING_ALERTS ÊÓͼµÄ´æÔÚÌåÏÖÁË Oracle Óú¼ÓÈËÐÔ»¯µÄÒ»Ãæ¡£ÎÒÃÇÏÈÀ´¿´Ò»Ï¸ÃÊÓͼµÄ»ù±¾½á¹¹£¬ºóÃæ»áÓõ½¡£








    SQL> DESC dba_outstanding_alerts
    Name Null? Type
    --------------------------------------------------------------------------
    SEQUENCE_ID NUMBER
    REASON_ID NOT NULL NUMBER
    OWNER VARCHAR2(30)
    OBJECT_NAME VARCHAR2(513)
    SUBOBJECT_NAME VARCHAR2(30)
    OBJECT_TYPE VARCHAR2(64)
    REASON VARCHAR2(4000)
    TIME_SUGGESTED TIMESTAMP(6) WITH TIME ZONE

    CREATION_TIME TIMESTAMP(6) WITH TIME ZONE
    SUGGESTED_ACTION VARCHAR2(4000)
    ADVISOR_NAME VARCHAR2(30)
    METRIC_VALUE NUMBER
    MESSAGE_TYPE VARCHAR2(12)
    MESSAGE_GROUP VARCHAR2(64)
    MESSAGE_LEVEL NUMBER
    HOSTING_CLIENT_ID VARCHAR2(64)
    MODULE_ID VARCHAR2(64)
    PROCESS_ID VARCHAR2(128)
    HOST_ID VARCHAR2(256)
    HOST_NW_ADDR VARCHAR2(256)
    INSTANCE_NAME VARCHAR2(16)
    INSTANCE_NUMBER NUMBER
    USER_ID VARCHAR2(30)
    EXECUTION_CONTEXT_ID VARCHAR2(60)
    ERROR_INSTANCE_ID VARCHAR2(142)
    SQL>


    10g µÄÐÂÊÓͼ V$RECOVERY_FILE_DEST °üº¬ÉÁ»Ø»Ö¸´ÇøµÄÏà¹ØÐÅÏ¢£º


    SQL> desc V$RECOVERY_FILE_DEST
    Name Null? Type
    -----------------------------------------------------------------------------
    NAME VARCHAR2(513)
    SPACE_LIMIT NUMBER
    SPACE_USED NUMBER
    SPACE_RECLAIMABLE NUMBER
    NUMBER_OF_FILES NUMBER
    SQL> SELECT NAME, space_limit, space_used, space_reclaimable space_rec,
    2 number_of_files file_num
    3 FROM v$recovery_file_dest;
    NAME SPACE_LIMIT SPACE_USED SPACE_REC FILE_NUM
    ----------------------------------------------------------------------------
    /u01/app/oracle/flash_recovery_area 2147483648 1106849280 602410496 30
    SQL>


    ÔÚһЩ 10g µÄ¶¯Ì¬ÊÓͼÀï(V$CONTROLFILE£¬V$LOGFILE£¬V$ARCHIVED_LOG£¬V$DATAFILE_COPYµÈ)µÄеÄÁÐ IS_RECOVERY_DEST_FILE ,Ö¸Ã÷Ïà¹ØµÄÎļþÊÇ·ñÔÚ»Ö¸´ÇøÄÚ¡£


    SQL> SELECT recid, blocks, is_recovery_dest_file
    2 FROM v$archived_log
    3 WHERE recid < 5;

    RECID BLOCKS IS_RECOVERY_DEST_FILE
    ---------- ---------- ----------------------------------------
    1 20072 YES
    2 19566 YES
    3 19566 YES
    4 19566 YES
    SQL>


    1.5. ÉÁ»Ø»Ö¸´ÇøÖÐÎļþµÄ±£³Ö²ßÂÔ

    ?³Ö¾ÃÎļþ´Ó²»»á±»É¾³ý¡£

    ?ͨ¹ýRMAN ÅäÖòßÂÔ¹ýÆÚµÄÎļþ»á±»É¾³ý¡£

    ?ÒѾ­¿½±´µ½´Å´øÉϵÄÁÙʱÐÔÎļþ»á±»É¾³ý¡£

    ?ÔÚ Data Guard »·¾³ÖУ¬µ±Òѹ鵵µÄÖØ×÷ÈÕÖ¾Îļþ¿ÉÒÔ´ÓÉÁ»Ø»Ö¸´ÇøÖÐɾ³ýµÄʱºò£¬¿ÉÒÔÓ¦Óù鵵µÄÖØ×÷ÈÕ־ɾ³ý²ßÂÔ½øÐÐ×Ô¶¯É¾³ý(ÔÚ»Ö¸´¹ÜÀíÆ÷ÖÐCONFIGURE ARCHIVELOG DELETION POLICY TO ......)¡£

    ÔÚÉÁ»Ø»Ö¸´ÇøÖеĿռäʹÓó¬¹ý 85% µÄʱºò£¬Êý¾Ý¿â½«»áÏò alert ÎļþÖÐдÈë¸æ¾¯ÐÅÏ¢¡£¶øµ±³¬¹ý97%µÄʱºò½«»áдÈëÑÏÖظ澯ÐÅÏ¢¡£µ±ÉÁ»Ø»Ö¸´Çø¿Õ¼ä²»¹»µÄʱºò£¬Oracle½«±¨¸æÈçÏÂÀàËƵĴíÎó£º


    ORA-19809: limit exceeded for recovery files
    ORA-19804: cannot reclaim 52428800 bytes disk space from 1258291200 limit


    Õâ¸öʱºò²éѯ dba_outstanding_alerts£º


    SQL> select reason,object_type,suggested_action from dba_outstanding_alerts;
    REASON OBJECT_TYPE SUGGESTED_ACTION
    ------------------------------ --------------- ----------------------------------------
    db_recovery_file_dest_size of RECOVERY AREA Add disk space and increase db_recovery_
    1258291200 bytes is 88.20% use ile_dest_size, backup files to tertiary
    d and has 148509184 remaining device, delete files from recovery area
    bytes available. using RMAN, consider changing RMAN reten-
    tion policy or consider changing RMAN a
    rchivelog deletion policy.
    1 rows selected.
    SQL>


    »á¸ø³öÏà¹ØµÄÔ­ÒòºÍ½¨ÒéµÄ²Ù×÷¡£

    1.6. ×¢ÒâÊÂÏî

    ×Ô¶¯»¯µÄ¶«Î÷×ÜÊǸøÈ˲»È·¶¨ÐÔ¡£Èç¹ûÄúÔÚ²âÊÔ»·¾³ÖÐÆôÓÃÁËÉÁ»Ø»Ö¸´Çø£¬ÄÇôһ¶¨Òª×¢Òâ¼à¿Ø¿Õ¼äµÄʹÓá£ÔÚÉú²úÊý¾Ý¿âÉÏʹÓÃ(Èç¹ûÓÐÕâÑùµÄÈ˵Ļ°)£¬±ØÐëÒª°ÑÉÁ»Ø»Ö¸´Çø·Åµ½µ¥¶ÀµÄ´ÅÅÌÉÏ¡£