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