ORALCE啟動時報如下錯誤:
ORA-03113: end-of-file on communication channel
解決方案如下:
1、查看orcle啟動日志,確定具體是什么原因引起的錯誤。
cd $ORACLE_HOME/diag/rdbms/實例名/實例名/trace/
ls -alcr | grep alert (c時間排序、r倒序) 定位啟動日志。
2.tail -f -n 500 alert_ncdbemu.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.
選擇:清理歸檔日志文件方法:
雙實例的oracle啟動---注意:首先要export ORACLE_SID=要操作的實例名 保證自己操作的實例是需要刪除歸檔日志文件的實例,然后進行刪除步驟:
1.啟動到mount狀態下:
su - oracle
sqlplus /nolog:
進入到sql命令窗口下:
conn /as sysdba
startup mount;
2.查看恢復區(閃回區)位置及大小:
SQL> show parameter db_recovery;
3.查詢當前的使用狀態
select file_type,PERCENT_SPACE_USED,NUMBER_OF_FILES from v$flash_recovery_area_usage;
4.物理清除歸檔路徑下的日志文件:
退出sql命令窗口:
cd /u01/flash_recovery_area/DMDEV/archivelog---進入到對應的歸檔實例日志目錄
清理不需要的歸檔日志---清理前請對需要的日子做好備份潮州:
rm -rf 不需要的日子文件目錄
物理日志文件清理后,還需要在ramn管理中清理一次,不然還是顯示的空間沒有釋放
5.進入rman命令行:通過rman管理工具清理。
連接上數據庫實例:rman----> connect target sys/sys_passwd
crosscheck backup;
delete obsolete;
delete expired backup;
crosscheck archivelog all;
delete expired archivelog all;
此步會有提示,輸入 YES 回車
退出rman 刪除完成,重新連接數據庫
6.刪除完畢后查看結果:
sqlplus /nolog
SQL> connect /as sysdba
SQL> select * from V$FLASH_RECOVERY_AREA_USAGE;
7.重新啟動數據庫 ok。
