RMAN無法刪除歸檔日志-創(chuàng)新互聯(lián)

今天同事問到一個問題,他那邊的一套11g數(shù)據(jù)庫使用RMAN沒辦法刪除舊的歸檔,導(dǎo)致磁盤使用率很高。要來ip登錄上去一看確實是,最舊的歸檔日志是16年5月的。

目前成都創(chuàng)新互聯(lián)已為上千多家的企業(yè)提供了網(wǎng)站建設(shè)、域名、雅安服務(wù)器托管、網(wǎng)站托管維護、企業(yè)網(wǎng)站設(shè)計、鷹手營子網(wǎng)站維護等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。oracle@ps251n2s:[/opt/oracle/archive/db] ls -ltr |more total 3059881082 -rw-r-----   1 oracle     oinstall   725320704 May 20  2016 1_1_91233774.dbf -rw-rw----   1 oracle     oinstall   1756937216 Jun  7  2016 1_2_91233774.dbf -rw-rw----   1 oracle     oinstall   1756731392 Jun 21  2016 1_3_91233774.dbf -rw-rw----   1 oracle     oinstall   1758001152 Jul  3  2016 1_4_91233774.dbf -rw-rw----   1 oracle     oinstall   1756729344 Jul 15  2016 1_5_91233774.dbf -rw-rw----   1 oracle     oinstall   1765750784 Jul 26 22:00 1_6_91233774.dbf -rw-rw----   1 oracle     oinstall   1760346112 Aug  6 14:04 1_7_91233774.dbf ......

使用RMAN list archivelog all;查看日志也沒有顯示舊歸檔日志的記錄

RMAN> list archivelog all; using target database control file instead of recovery catalog List of Archived Log Copies for database with db_unique_name DBS ===================================================================== Key     Thrd Seq     S Low Time  ------- ---- ------- - --------- 1206    1    1206    A 14-JAN-17         Name: /opt/oracle/archive/db/1_1206_91233774.dbf 1207    1    1207    A 14-JAN-17         Name: /opt/oracle/archive/db/1_1207_91233774.dbf 1208    1    1208    A 14-JAN-17         Name: /opt/oracle/archive/db/1_1208_91233774.dbf ......

使用crosscheck檢查也沒有查到舊歸檔日志記錄

RMAN> crosscheck archivelog all; using target database control file instead of recovery catalog allocated channel: ORA_DISK_1 channel ORA_DISK_1: SID=16 device type=DISK validation succeeded for archived log archived log file name=/opt/oracle/archive/db/1_1206_91233774.dbf RECID=1206 STAMP=933244655 validation succeeded for archived log archived log file name=/opt/oracle/archive/db/1_1207_91233774.dbf RECID=1207 STAMP=933249510 validation succeeded for archived log archived log file name=/opt/oracle/archive/db/1_1208_91233774.dbf RECID=1208 STAMP=933254500 validation succeeded for archived log archived log file name=/opt/oracle/archive/db/1_1209_91233774.dbf RECID=1209 STAMP=933259445 validation succeeded for archived log

查看v$archived_log視圖也沒有舊歸檔日志記錄

于是百度找到一篇文章http://3y.uu456.com/bp_3i90z4529l10ttd0odyk_1.html 大體意思是MAN刪除歸檔日志的依據(jù)是controlfile中記錄的歸檔日志,而不是你磁盤上實際存在的歸檔日志

,如果你的歸檔日志已經(jīng)不在controlfile中就無法被RMAN識別到,也就無法被刪除。而致于歸檔信息何時在控制文件中被覆蓋,這由一個參數(shù)control_file_record_keep_time來控制。

查看數(shù)據(jù)庫中的參數(shù)是默認的7天

SYS@db> show parameter CONTROL_FILE_RECORD_KEEP_TIME NAME                                 TYPE                             VALUE ------------------------------------ -------------------------------- ------------------------------ control_file_record_keep_time        integer                          7

難道是在控制文件中歸檔日志的記錄條數(shù)只能保留7天的么?于是到MOS去找相關(guān)文檔找到一篇Why Are Controlfile Entries For Archived Logs Not Overwritten After CONTROL_FILE_RECORD_KEEP_TIME? (文檔 ID 1056085.1),文檔介紹CONTROL_FILE_RECORD_KEEP_TIME參數(shù)并不是強制在控制文件中保留多少天的歸檔日志條目,而是由V$CONTROLFILE_RECORD_SECTION視圖中的ARCHIVED LOG條目去控制的,當(dāng)RECORDS_TOTAL=RECORDS_USED時舊的歸檔日志就會被覆蓋掉。

于是查數(shù)據(jù)庫中的V$CONTROLFILE_RECORD_SECTION視圖,看到ARCHIVED LOG行的records_total=224意味著控制文件中只能保留224條歸檔日志文件信息。

SYS@dbs> select * from v$controlfile_record_section where type='ARCHIVED LOG'; TYPE                         RECORD_SIZE RECORDS_TOTAL RECORDS_USED FIRST_INDEX LAST_INDEX LAST_RECID ---------------------------- ----------- ------------- ------------ ----------- ---------- ---------- ARCHIVED LOG                         584           224          224          88         87       1235

查詢v$archived_log視圖,總數(shù)為224條

SYS@dbs> select count(*) from v$archived_log;   COUNT(*) ----------        224

這時應(yīng)該可以推斷出由于控制文件中只能保留224條歸檔日志數(shù)據(jù),所以以前的歸檔信息已經(jīng)被控制文件刷出,RMAN無法識別到這些歸檔文件,所以就無法刪除這些歸檔日志。

那么現(xiàn)在如果使用RMAN刪除這些舊的歸檔日志呢?我想到使用catalog start with 命令重新注冊這些文件到控制文件中

RMAN> catalog start with '/opt/oracle/archive/db'; ...... File Name: /opt/oracle/archive/db/1_1005_91233774.dbf File Name: /opt/oracle/archive/db/1_1006_91233774.dbf File Name: /opt/oracle/archive/db/1_1007_91233774.dbf Do you really want to catalog the above files (enter YES or NO)? yes cataloging files... cataloging done ...... RMAN> list archivelog all; ..... 1236    1    301     A 22-OCT-16         Name: /opt/oracle/archive/db/1_301_91233774.dbf 1237    1    302     A 22-OCT-16         Name: /opt/oracle/archive/db/1_302_91233774.dbf ......

舊的歸檔日志文件已經(jīng)注冊到控制文件中了,再使用RMAN進行刪除就可以了

delete archivelog until logseq 1007;

再次查詢v$controlfile_record_section視圖,records_total也被“撐”大了

SYS@db> select * from v$controlfile_record_section where type='ARCHIVED LOG'; TYPE                         RECORD_SIZE RECORDS_TOTAL RECORDS_USED FIRST_INDEX LAST_INDEX LAST_RECID ---------------------------- ----------- ------------- ------------ ----------- ---------- ---------- ARCHIVED LOG                         584           896          742         807        652       1800

至此問題結(jié)束。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

本文題目:RMAN無法刪除歸檔日志-創(chuàng)新互聯(lián)
鏈接分享:http://muchs.cn/article2/ddsoic.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、虛擬主機、電子商務(wù)、網(wǎng)站改版、品牌網(wǎng)站設(shè)計、用戶體驗

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

綿陽服務(wù)器托管