oracle11.2.0.3 安装在SUSE 11.1上,今天早上应用程序进不去,之后发现数据库连不上。
通过sqlplus连接数据库,startup启动报ORA-03113错误SQL> startup
ORACLE instance started.
Total System Global Area 3641094144 bytes
Fixed Size 2233680 bytes
Variable Size 2013268656 bytes
Database Buffers 1610612736 bytes
Redo Buffers 14979072 bytes
Database mounted.
ORA-03113: end-of-file on communication channel
Process ID: 4332
Session ID: 45 Serial number: 3
检查oracle错误日志alert.log(位置在oracl_base/diag/rdbms/orcl/orcl/trace)发现有很多ORA-19815错误ARC0: Error 19809 Creating archive log file to '/opt/oracle/fast_recovery_area/ORCL/archivelog/2013_07_03/o1_mf_1_112_%u_.arc'
Errors in file /opt/oracle/diag/rdbms/orcl/orcl/trace/orcl_arc2_4393.trc:
ORA-19815: : db_recovery_file_dest_size (322230272 ) 00.00%, 0 ************************************************************************
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.
报错信息很明显是因为db_recovery_file_dest_size太小了,增加其大小步骤如下:
1.首先要停止oracle进程,可以kill掉ora_*进程
2.使用mount方式启动数据库
SQL>startup mount;
3.增加恢复日志空间
SQL>alter system set db_recovery_file_dest_size= 10G;
4.正常重启数据库
SQL>shutdown immediate;
SQL>startup;