Oracle-10g
自動清除 ARCHIVELOG
我有一個 Oracle 10g XE 安裝(專門用於開發),到目前為止已在
...\oraclexe\app\oracle\flash_recovery_area\XE\ARCHIVELOG
. 我確實需要那個空間,我很想使用 Windows 資源管理器刪除所有內容,但 Oracle 肯定不會被逗樂。是否可以將 Oracle XE 配置為在不再需要時自動清除這些內容?
“不再需要”是什麼意思?存檔重做日誌只有“一種”用途,它們可以應用於最後一次完整/增量數據庫備份以恢復數據庫。
因此,您可以備份您的開發數據庫,然後您可以在數據庫備份期間通過 RMAN 刪除它們。或者您不備份數據庫,然後您可以在 NO ARCHIVELOG 模式下執行。
要完全禁用存檔日誌記錄,您需要在本地連接(重要一點,否則您將斷開連接)並以 DBA 身份執行 sqlplus:
C:\>sqlplus / as sysdba
…然後執行:
SQL> shutdown immediate; SQL> startup mount; SQL> alter database noarchivelog; SQL> alter database open;
此外,執行它來檢查它是否已啟用:
SQL> archive log list;
不過,這不會刪除現有日誌。您首先需要直接從文件系統中手動刪除文件。完成後,您可以執行 RMAN:
C:\> rman
…並告訴 Oracle 你剛剛做了什麼:
RMAN> connect target; RMAN> crosscheck archivelog all; RMAN> delete noprompt expired archivelog all;
免責聲明:我們剛剛禁用了與備份相關的功能!