Oracle回闪空间不足引起的ORA-03113问题排解
现象:
数据库startup时,出现数据库无法正常mount,并报ORA-03113错误。
SQL>startup
ORACLEinstancestarted.
TotalSystemGlobalArea830930944bytes
FixedSize2217912bytes
VariableSize599787592bytes
DatabaseBuffers222298112bytes
RedoBuffers6627328bytes
Databasemounted.
ORA-03113:end-of-fileoncommunicationchannel
ProcessID:6846
SessionID:125Serialnumber:5
分析:
根据进程号(ProcessID)查找到LOG文件的:oral-ora-6846.trc,查看到报错信息
ORA-19815:WARNING:db_recovery_file_dest_sizeof4039114752bytesis100.00%used,andhas0remainingbytesavailable.
结论:
db_recovery_file_dest_size被全部耗尽,导致数据库宕机及无法启动。
解决方法:
1、清理过期文件
1.1进入rman命令状态
[oracle@localhost~]$rmantarget/
RecoveryManager:Release11.2.0.1.0-ProductiononSatSep2514:18:532010
Copyright(c)1982,2009,Oracleand/oritsaffiliates.Allrightsreserved.
connectedtotargetdatabase:ONLINE(DBID=2094135012)
1.2查看所有LOG文件
RMAN>crosscheckarchivelogall;
1.3删除所有LOG文件
RMAN>deletearchivelogall;
PS:
其间遇到crosscheck命令无效,主要是进入rman时,返回“connectedtotargetdatabase:(nodatabasestart)”。查其原因是,oracle_sid不匹配。使用echo$ORACLE_SID命令查看,使用export命令修改。
2、扩大db_recovery_file_dest_size空间
2.1查看回闪空间位置、大小及回闪时间
Sql>showparameterdb_recovery ''查看回闪位置及回闪区大小
Sql>showparameterflashback ''查看回闪位置
Sql>selectfile_type,PERCENT_SPACE_USED,NUMBER_OF_FILESfromv$flash_recovery_area_usage; ‘查看回闪空间文件类型及占用情况
2.2修改回闪空间大小
Sql>startupnomount ‘将数据库启到NOMOUNT状态
Sql>altersystemsetdb_recovery_file_dest_size=8000M;‘将空间改为8G
2.2修改回闪空间时间
Sql>startupnomount ‘将数据库启到NOMOUNT状态
Sql>altersystemsetdb_flashback_retention_target=20160;‘将回闪时间改为14天
时间计算方法是24小时60分钟。
|
|