Oracle啟動報錯
阿新 • • 發佈:2021-11-29
Oracle啟動報錯
解決方案如下
一、檢視啟動日誌
cd home/oracle/app/diag/rdbms/ekp/ekp/trace
日誌檔案,ekp/ekp 資料庫例項名
ls -alcr | grep alert
(c時間排序、r倒序) 定位啟動日誌
tail -f -n 500 alert_ekp.log
然後重啟執行startup命令:得到oracle提示如下:
``` You have following choices to free up space from recovery area: 1. Consider changing RMAN RETENTION POLICY. If you are using Data Guard, then consider changing RMAN ARCHIVELOG DELETION POLICY. 2. Back up files to tertiary device such as tape using RMAN BACKUP RECOVERY AREA command. 3. Add disk space and increase db_recovery_file_dest_size parameter to reflect the new space. 4. Delete unnecessary files using RMAN DELETE command. If an operating system command was used to delete files, then use RMAN CROSSCHECK and DELETE EXPIRED commands. ```
二、使用mount啟動oracle
su - oracle
使用oracle使用者
sqlplus /nolog
使用SQL命令視窗
conn /as sysdba
連線到管理員使用者
startup mount
開啟控制檔案
三、檢視並清理不需要的歸檔日誌
- 檢視恢復區(閃回區)位置及大小
SQL> show parameter db_recovery;
NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ db_recovery_file_dest string /home/oracle/app/fast_recovery _area db_recovery_file_dest_size big integer 6G
- 查詢當前的使用狀態
select file_type,PERCENT_SPACE_USED,NUMBER_OF_FILES from v$flash_recovery_area_usage;
- 物理清除歸檔路徑下的日誌檔案:
- 退出sql命令視窗:
- 進入到對應的歸檔例項日誌目錄
cd /home/oracle/app/fast_recovery_area
- 清理不需要的歸檔日誌
清理前請對需要的日子做好備份潮州:
rm -rf 不需要的日子檔案目錄
物理日誌檔案清理後,還需要在ramn管理中清理一次,不然還是顯示的空間沒有釋放
四、進入rman命令列:通過rman管理工具清理
- 進入rman命令列
rman nocatalog
connect target /
連線 - 連線上資料庫例項
connect target sys/sys_passwd
- 執行刪除快取命令
crosscheck backup;
delete obsolete;
delete expired backup;
crosscheck archivelog all;
delete expired archivelog all;
此步會有提示,輸入 YES 回車
退出rman 刪除完成,重新連線資料庫
五、清理完畢後檢視結果
sqlplus /nolog
SQL> connect /as sysdba
SQL> select * from V$FLASH_RECOVERY_AREA_USAGE;
六、重新啟動資料庫ok