posts - 495,comments - 227,trackbacks - 0
          <2010年11月>
          31123456
          78910111213
          14151617181920
          21222324252627
          2829301234
          567891011

          常用鏈接

          留言簿(46)

          隨筆分類(476)

          隨筆檔案(495)

          最新隨筆

          搜索

          •  

          積分與排名

          • 積分 - 1396785
          • 排名 - 16

          最新評論

          閱讀排行榜

          評論排行榜

           

          1、刪除多余的歸檔日志

          在ORACLE10G中,默認(rèn)的歸檔路徑為$ORACLE_BASE/flash_recovery_area。對于這個路徑,ORACLE有一個限制,就是默認(rèn)只能有2G的空間給歸檔日志使用,可以使用下面兩個SQL語句去查看它的限制:
          1. select * from v$recovery_file_dest;
          2. show parameter db_recovery_file_dest(這個更友好直觀一些)
          當(dāng)歸檔日志數(shù)量大于2G時,那么就會由于沒有更多的空間去容納更多的歸檔日志會報無法繼續(xù)歸檔的錯誤。
          如:“RA-19809: limit exceeded for recovery files
          ORA-19804: cannot reclaim 10017792 bytes disk space from 2147483648 limit
          ARC0: Error 19809 Creating archive log file to '/u01/app/oracle/flash_recovery_area/ORCL/archivelog/2007_04_30/o1_mf_1_220_0_.arc' ”這時我們可以修改它的默認(rèn)限制,比如說將它增加到5G或更多,也可以將歸檔路徑重新置到別的路徑,就不會有這個限制了。

            更改限制語句如下:
          alter system set db_recovery_file_dest_size=5368709102  (這里為5G 5x1024x1024x1024=5G)
          alter system set db_recovery_file_dest_size=10737418240



          進入

          rman target username/password@database

           

          執(zhí)行下邊的交叉校驗

          crosscheck archivelog all;

          此時可能會提示校驗失敗,類似下邊的提示:

          RMAN> crosscheck archivelog all;

          釋放的通道: ORA_DISK_1

          分配的通道: ORA_DISK_1

          通道 ORA_DISK_1: sid=14 devtype=DISK

          對歸檔日志的驗證失敗

          …………….

          這時,需要執(zhí)行exit退出rman

          在命令提示符窗口下執(zhí)行下邊的字符集設(shè)置

          C:>set nls_lang=american_america.zhs16gbk

          然后再進入rman  ,再執(zhí)行crosscheck archivelog all;一般不會再出現(xiàn)這樣的問題了。

           

          在命令窗口里面執(zhí)行

          DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7';

          說明

          SYSDATA-7,表明當(dāng)前的系統(tǒng)時間7天前,before關(guān)鍵字表示在7天前的歸檔日志,如果使用了閃回功能,也會刪除閃回的數(shù)據(jù)。

          同樣道理,也可以刪除從7天前到現(xiàn)在的全部日志,不過這個命令要考慮清楚,做完這個刪除,最好馬上進行全備份數(shù)據(jù)庫

          DELETE ARCHIVELOG FROM TIME 'SYSDATE-7';

           

          UNIX/LINUX下也可以通過FIND找到7天前的歸檔數(shù)據(jù),使用EXEC子操作刪除

          find /oraarchive -xdev -mtime +7 -name "*.dbf" -exec rm -f {} ;

          這樣做仍然會在RMAN里留下未管理的歸檔文件

          仍需要在RMAN里執(zhí)行下面2條命令

          crosscheck archivelog all;

          delete expired archivelog all;

          所以還不如上面的方法好用,不過用FIND的好處就是,可以在條件上,和EXEC子項上做很多操作,實現(xiàn)更復(fù)雜的功能

           

          2report obsoletedelete obsolete刪除過期備份命令

          使用report obsolete命令報告過期備份

          RMAN> report obsolete;

          RMAN retention policy will be applied to the command

          RMAN retention policy is set to redundancy 1

          Report of obsolete backups and copies

          Type                 Key    Completion Time    Filename/Handle

          -------------------- ------ ------------------ --------------------

          Backup Set           125    01-NOV-04

          Backup Piece       125    01-NOV-04          /data1/oracle/orabak/full_1_541045804

          Backup Set           131    04-NOV-04

          Backup Piece       131    04-NOV-04          /data1/oracle/orabak/full_AVATAR2_20041104_131

          ....

           

          使用delete obsolete命令刪除過期備份:

          RMAN> delete obsolete;

          RMAN retention policy will be applied to the command

          RMAN retention policy is set to redundancy 1

          using channel ORA_DISK_1

          Deleting the following obsolete backups and copies:

          Type                 Key    Completion Time    Filename/Handle

          -------------------- ------ ------------------ --------------------

          Backup Set           125    01-NOV-04

          Backup Piece       125    01-NOV-04          /data1/oracle/orabak/full_1_541045804

          ....

          Archive Log          2704   17-DEC-04          /opt/oracle/oradata/avatar2/archive/1_2716.dbf

          Archive Log          2703   17-DEC-04          /opt/oracle/oradata/avatar2/archive/1_2715.dbf

          Archive Log          2702   17-DEC-04          /opt/oracle/oradata/avatar2/archive/1_2714.dbf

          Do you really want to delete the above objects (enter YES or NO)? yes

          deleted backup piece

          backup piece handle=/data1/oracle/orabak/full_AVATAR2_20041206_173 recid=173 stamp=544156241

          .....

           

          注:在執(zhí)行刪除的時候,可能會提示下邊的報錯信息:

          ORA-19554: 配置設(shè)備時出錯, 設(shè)備類型: SBT_TAPE, 設(shè)備名稱:

          ORA-27211: 未能加載介質(zhì)管理庫

           

          解決方法,運行下邊的命令:

          RMAN> allocate channel for maintenance type disk;

          RMAN> crosscheck archivelog all;

          RMAN> delete obsolete;

           

           

          3Oracle RMANshow,list,crosscheck,delete

           

          Oracle RMANshow,list,crosscheck,delete 命令整理

          1SHOW命令:

             顯示rman配置: RMAN> show all;

          2REPORT命令:

             2.1RMAN> report schema                        報告目標(biāo)數(shù)據(jù)庫的物理結(jié)構(gòu);

             2.2RMAN>report need backup days=3;            報告最近3天沒有被備份的數(shù)據(jù)文件;

             2.3RMAN> report need backup days 3 tablespace users;   USERS表空間上3天未備份的數(shù)據(jù)文件;

             2.4RMAN> report need backup incremental 3;    報告恢復(fù)數(shù)據(jù)文件需要的增量備份個數(shù)超過3次的數(shù)據(jù)文件;

             2.5RMAN> report need backup redundancy 2 database;           報告?zhèn)浞菸募陀?/span>2份的所有數(shù)據(jù)文件;

                  RMAN>report need backup redundancy=2;

             2.6RMAN> report need backup recovery window of 6 days;    報告文件報表的恢復(fù)需要超過6天的歸檔日志的數(shù)據(jù)文件;

             2.7RMAN> report unrecoverable;      報告數(shù)據(jù)庫所有不可恢復(fù)的數(shù)據(jù)文件;

             2.8RMAN> report obsolete redunndancy 2; 報告?zhèn)浞荽螖?shù)超過2次的陳舊備份;

             2.9RMAN>report obsolete;          報告多余的備份;

          3LIST命令:列出備份信息

             3.1、列出數(shù)據(jù)文件備份集

                  RMAN>list backup         列出詳細(xì)備份;

                  RMAN>list expired backup     列出過期備份;

                  RMAN> list backup of database;     列出所有數(shù)據(jù)文件的備份集;

                  RMAN> list backup of tablespace user01; 列出特定表空間的所有數(shù)據(jù)文件備份集;

             3.2RMAN> list backup of controlfile     列出控制文件備份集;

             3.3RMAN> list backup of archivelog all      列出歸檔日志備份集詳細(xì)信息;

                  RMAN>list archivelog all;      列出歸檔日志備份集簡要信息

             3.4RMAN> list backup of spfile              列出SPFILE備份集;

             3.5RMAN> list copy of datafile 5        列出數(shù)據(jù)文件映像副本;

             3.6RMAN> list copy of controlfile           列出控制文件映像副本;

             3.7RMAN> list copy of archivelog all    列出歸檔日志映像副本;

             3.8RMAN> list incarnation of database       列出對應(yīng)物/列出數(shù)據(jù)庫副本;

             3.9RMAN>list backup summary;    概述可用的備份;

                          B表示backup

                          F表示FULL

                          A表示archive log

                          0 1表示incremental backup

                          S說明備份狀態(tài)(A AVAILABLE   X EXPIRED )

              

             3.10RMAN>list backup by file    按備份類型列出備份;

                              按照數(shù)據(jù)文件備份,歸檔日志備份,控制文件備份,服務(wù)器參數(shù)文件備份 列出

          4CROSSCHECK命令:校驗備份信息

             4.1RMAN> crosscheck backup             核對所有備份集;  

             4.2RMAN> crosscheck backup of database      核對所有數(shù)據(jù)文件的備份集;  

             4.3RMAN> crosscheck backup of tablespace users      核對特定表空間的備份集;  

             4.4RMAN> crosscheck backup of datafile 4    核對特定數(shù)據(jù)文件的備份集;  

             4.5RMAN> crosscheck backup of controlfile   核對控制文件的備份集;  

             4.6RMAN> crosscheck backup of spfile    核對SPFILE的備份集;  

             4.7RMAN> crosscheck backup of archivelog sequence 3 核對歸檔日志的備份集;  

             4.8RMAN> crosscheck copy               核對所有映像副本;  

             4.9RMAN> crosscheck copy of database       核對所有數(shù)據(jù)文件的映像副本;  

             4.10RMAN> crosscheck copy of tablespace users       核對特定表空間的映像副本;  

             4.11RMAN> crosscheck copy of datafile 6        核對特定數(shù)據(jù)文件的映像副本;  

             4.12RMAN> crosscheck copy of archivelog sequence 4  核對歸檔日志的映像副本;  

             4.13RMAN> crosscheck copy of controlfile       核對控制文件的映像副本; 

             4.14RMAN> crosscheck backup tag='SAT_BACKUP';

             4.15RMAN> crosscheck backup completed after 'sysdate - 2'

             4.16RMAN> crosscheck backup completed between 'sysdate - 5' and 'sysdate -2 '

             4.17RMAN> crosscheck backup device type sBT;

             4.18RMAN> crosscheck archivelog all;

             4.19RMAN> crosscheck archivelog like '%ARC00012.001'

             4.20RMAN> crosscheck archivelog from sequence 12;

             4.21RMAN> crosscheck archivelog until sequence 522;

          5DELETE:刪除備份

             5.1RMAN> delete obsolete;      刪除陳舊備份;

             5.2RMAN> delete expired backup; 刪除EXPIRED備份    

             5.3RMAN> delete expired copy;   刪除EXPIRED副本;

             5.4RMAN> delete backupset 19;   刪除特定備份集;

             5.5RMAN> delete backuppiece ''d:\backup\DEMO_19.bak''   刪除特定備份片;

             5.6RMAN> delete backup      刪除所有備份集;

             5.7RMAN> delete datafilecopy ''d:\backup\DEMO_19.bak''  刪除特定映像副本;

             5.8RMAN> delete copy   刪除所有映像副本;

             5.9RMAN> delete archivelog all delete input;

                  RMAN> delete backupset 22 format = ''d:\backup\%u.bak'' delete input

                                 在備份后刪除輸入對象;

             5.10RMAN> delete backupset id;

           

           

          4em控制臺對備份的操作

          使用sys用戶的sysdba權(quán)限進入em控制臺

          在“維護”模塊下,點擊進入到“管理當(dāng)前備份”操作選項。

           在“管理當(dāng)前備份”選項中可以列出所有的備份集

          如果要刪除備份,可以在下邊的列表中選中要刪除的備份集,執(zhí)行“刪除”命令,這時會有一個確認(rèn)提示的頁面:

          點擊“是”按鈕,進行刪除操作。如果提示操作“刪除”失敗,可以將上一步要執(zhí)行的命令在命令提示符下使用rman命令來執(zhí)行。

           

          5、小結(jié)

          像歸檔日志之類的備份,備份的文件夾是在一個叫flash_recovery_area的目錄下邊。

          1、歸檔日志備份在ARCHIVELOG 這個文件夾下邊,上邊對歸檔日志的操作基本上是對這個文件夾下的文件進行操作。

          2obsolete刪除操作基本上是對AUTOBACKUP這個文件夾下的文件進行操作。(不是十分的確定)

          3delete backup操作基本上是對BACKUPSET文件夾和DATAFILE文件夾的內(nèi)容進行操作的。

          4、在em管理后臺,最下邊有一個“相關(guān)鏈接”模塊,下有“作業(yè)”選項鏈接,可以看到所有數(shù)據(jù)庫備份操作歷史作業(yè)記錄,在此可以對相應(yīng)的備份作業(yè)進行修改操作。

          另外如果要添加備份操作作業(yè)時,需要在“維護”模塊下找到“調(diào)試備份”鏈接,推薦使用“Oracle 建議的備份”來添加備份操作作業(yè)。


          Linux下查看文件夾大小的命令du -sh docname

           

          posted on 2010-11-05 11:08 SIMONE 閱讀(3978) 評論(0)  編輯  收藏 所屬分類: oracle
          主站蜘蛛池模板: 勃利县| 枞阳县| 遂昌县| 长武县| 三穗县| 呼和浩特市| 来安县| 遵义县| 阿尔山市| 新兴县| 诏安县| 普陀区| 黑水县| 卢湾区| 大庆市| 准格尔旗| 三明市| 呼和浩特市| 灵璧县| 扎赉特旗| 和平区| 遂宁市| 焦作市| 三门县| 西城区| 隆安县| 公主岭市| 石屏县| 泰来县| 永寿县| 泰宁县| 万源市| 四平市| 蓬溪县| 祁连县| 瑞安市| 九江市| 濮阳县| 鱼台县| 泸州市| 沐川县|