Oracle 10默認是把存檔終點設(shè)置為USE_DB_RECOVERY_FILE_DEST,所以歸檔日志默認是保存在oracle系統(tǒng)的閃回恢復區(qū)(Flash recovery area)的。默認的db_recovery_file_dest是2G,所以一般建議將存檔終點修改為操作系統(tǒng)的適當目錄。
由于歸檔日志太大,撐滿了閃回恢復區(qū),導致了9月23日Oracle數(shù)據(jù)掛起,集團的ERP不能使用;手動啟動數(shù)據(jù)報ORA-00257錯誤
|
SQL> alter system set DB_RECOVERY_FILE_DEST_SIZE= 4G;
修改DB_RECOVERY_FILE_DEST_SIZE可以啟動了。
中午查了資料,了解了flash_recovery_area的東西;決定要archive log的備份目錄改為系統(tǒng)目錄。
SQL> select * from v$flash_recovery_area_usage;
FILE_TYPE PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE NUMBER_OF_FILES
------------ ------------------ ------------------------- ---------------
CONTROLFILE 0 0 0
ONLINELOG 0 0 0
ARCHIVELOG 72.46 0 51
BACKUPPIECE 26.84 0 6
IMAGECOPY 0 0 0
FLASHBACKLOG 0 0 0
當時查看flash_recovery_area的使用,發(fā)現(xiàn)ARCHIVELOG的使用率為90多;
2009-9-23 中午
2、修改歸檔目錄位置:
orahost:root:[/Oracle]#mkdir arch_log
orahost:root:[/Oracle]#chown –R oracle:oinstall ./arch_log
orahost:root:[/Oracle]#chmod 775 ./arch_log
orahost:root:[/Oracle/arch_log]#su – oracle
$sqlplus /nolog
SQL>conn /as sysdba
SQL> alter system set db_recovery_file_dest='';
更改oracl系統(tǒng),禁止往閃回恢復區(qū)放歸檔日志。
System altered.
SQL> alter system set log_archive_dest='/
更改數(shù)據(jù)庫,歸檔日志的存檔終點。 System altered. SQL> archive log list Database log mode Archive Mode Automatic archival Enabled Archive destination /Oracle/arch_log Oldest online log sequence 4033 Next log sequence to archive 4038 Current log sequence 4038