oracle歸檔日誌刪除

2021-09-02 03:08:18 字數 1693 閱讀 4766

oracle刪除歸檔日誌的實現方法

oracle歸檔日誌滿了後,就需要刪除一部分歸檔日誌,下文對oracle刪除歸檔日誌的方法作了詳盡的闡述,如果您感興趣的話,不妨一看。

oracle刪除歸檔日誌使我們經常會用到的操作,下面就為您詳細介紹oracle刪除歸檔日誌的實現方法,希望對您能夠有所幫助。

當oracle 歸檔日誌滿了後,將無法正常登入oracle,需要刪除一部分歸檔日誌才能正常登入oracle。

一、首先刪除歸檔日誌物理檔案,歸檔日誌一般都是位於archive目錄下,aix系統下檔案格式為「1_17884_667758186.dbf」,建議操作前先對資料庫進行備份,刪除時至少保留最近幾天的日誌用於資料庫恢復。

二、把歸檔日誌的物理檔案刪除後,我們就可以正常登入oracle了,但是還沒完全把歸檔日誌刪除乾淨,oracle的controlfile中仍然記錄著這些archivelog的資訊,在oracle的oem管理器中有視覺化的日誌展現出,當我們手工清除archive目錄下的檔案後,這些記錄並沒有被我們從controlfile中清除掉,接下去我們要做的就是這個工作。

我們利用rman進行刪除操作,oracle刪除歸檔日誌操作步驟如下:(win客戶端系統為例)

1.指定資料庫例項

c:\documents and settings\administrator>set oracle_sid =orcl

2.連線資料庫

c:\documents and settings\administrator>rman target sys/sysadmin@orcl

3.檢視歸檔日誌的狀態

rman> list archivelog all;

4.手工刪除歸檔日誌檔案

rman> delete archivelog all completed before 'sysdate-7';

另外,用 rman delete的時候可能會報:rman-08137: warning: archived log not deleted, needed for standby or upstream capture process

嘗試刪除歸檔日誌,oracle提示這些歸檔日誌還要用到standby資料庫上面,不讓刪除,

這個特點不錯,可以避免由於沒有同步standby而誤刪除archivelog的情況。

要刪除,[color=red]需要加上force刪除就可以了。[/color]

說明:sysdata-7,表明當前的系統時間7天前,before關鍵字表示在7天前的歸檔日誌,如果使用了閃回功能,也會刪除閃回的資料。

同樣道理,也可以刪除從7天前到現在的全部日誌,不過這個命令要考慮清楚,做完這個刪除,最好馬上進行全備份資料庫

delete archivelog from time 'sysdate-7'; 刪除從7天前到現在的全部日誌,慎用

unix/linux下也可以通過find找到7天前的歸檔資料,使用exec子操作刪除

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

這樣做仍然會在rman裡留下未管理的歸檔檔案

仍需要在rman裡執行下面2條命令

crosscheck archivelog all;

delete expired archivelog all;

所以還不如上面的方法好用,不過用find的好處就是,可以在條件上,和exec子項上做很多操作,實現更複雜的功能。

oracle 刪除歸檔日誌

1 常用命令 sql show parameter log archive dest sql archive log list sql select from v flash recovery area usage archivelog 96.62 0 141 sql select sum perc...

oracle刪除歸檔日誌

1 擴大flash recovery area的空間 alter system set db recovery file dest size 12g scope both 2 刪除歸檔日誌 2.1 利用rman刪除無效或備份過的歸檔 1 rman target rman target admin a...

刪除oracle歸檔日誌

方法1 正常情況下應該在rman下刪除archivelog rman delete archivelog all 刪除所有歸檔日誌 list archivelog all completed before sysdate 1 檢視指定日期的歸檔日誌 delete archivelog all com...