Oracle 資料庫可運行於歸檔模式 (ARCHIVELOG)與非歸檔模式 (NOARCHIVELOG)。生產環境務必啟用歸檔模式以強化可恢復性,並需搭配完整備份策略,單獨啟用歸檔模式若無備份機制反而增加管理負擔。
SQL> ARCHIVE LOG LIST Database log mode No Archive Mode Automatic archival Disabled Archive destination USE_DB_RECOVERY_FILE_DEST Oldest online log sequence 15 Current log sequence 17
SHUTDOWN IMMEDIATE;STARTUP MOUNT;ALTER DATABASE ARCHIVELOG;ALTER DATABASE OPEN;ARCHIVE LOG LIST;SQL> ARCHIVE LOG LIST Database log mode Archive Mode Automatic archival Enabled Archive destination USE_DB_RECOVERY_FILE_DEST Oldest online log sequence 15 Next log sequence to archive 17 Current log sequence 17
ALTER DATABASE NOARCHIVELOG;
在 init.ora 或 spfile 設定:
LOG_ARCHIVE_START = TRUE
重啟後生效。亦可於啟動階段手動執行 ARCHIVE LOG START 啟用自動歸檔,但重啟後將恢復手動模式。
10g 引入 DB_RECOVERY_FILE_DEST 作為歸檔日誌預設儲存位置:
SQL> SHOW PARAMETER DB_RECOVERY NAME TYPE VALUE db_recovery_file_dest STRING /home/Oracle/ora10g/Flash_recovery_area/ db_recovery_file_dest_size BIG INTEGER 20G
調整大小範例:
ALTER SYSTEM SET DB_RECOVERY_FILE_DEST_SIZE = 21474836480; -- 20GB