测试环境中的一台oracle服务器,在主机意外重启后无法启动,数据库版本为11gR2
SQL> conn /as sysdbaConnected to an idle instance.
SQL> startup
ORACLE instance started.
Total System Global Area 1653518336 bytes
Fixed Size 2213896 bytes
Variable Size 1258293240 bytes
Database Buffers 385875968 bytes
Redo Buffers 7135232 bytes
Database mounted.
ORA-03113: end-of-file on communication channel
Process ID: 3048
Session ID: 125 Serial number: 5
查看报警日志,11gR2的路径如下
/home/oracle/app/diag/rdbms/orcl/orcl/alert //xml格式文件
/home/oracle/app/diag/rdbms/orcl/orcl/trace //trc文件
我这里查看的是xml文件
[oracle@odb01 alert]$ pwd
/home/oracle/app/diag/rdbms/orcl/orcl/alert
[oracle@odb01 alert]$ ls
log_1.xml log_2.xml log.xml
查看文件的末尾,看到如下的报错
<txt>Errors in file /home/oracle/app/diag/rdbms/orcl/orcl/trace/orcl_ora_3048.trc:
ORA-19815: WARNING: db_recovery_file_dest_size of 5218762752 bytes is 100.00% used, and has 0 remaining bytes available.
默认的归档日志目录已经满了
SQL> startup mount
ORACLE instance started.
Total System Global Area 1653518336 bytes
Fixed Size 2213896 bytes
Variable Size 1258293240 bytes
Database Buffers 385875968 bytes
Redo Buffers 7135232 bytes
Database mounted.
查看预先配置的db_recovery_file_dest_size有多大
SQL> show parameter db_recovery_file_dest_size;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest_size big integer 4977M
没用多久,5G空间就满了。
两种解决方法:
一种是增加db_recovery_file_dest_size 的大小
SQL> ALTER SYSTEM SET db_recovery_file_dest_size=10G;
System altered.
另一种是删除不需要的归档日志文件
使用rman删除日志
delete archivelog all completed before 'sysdate - 3';
但是,在正式的生产环境下,一般是使用独立的目录来存放归档日志,并有适合的备份策略
查看默认路径
SQL> show parameter db_recovery
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest string /home/oracle/app/flash_recover
y_area
db_recovery_file_dest_size big integer 10G
以下转载,原文地址:http://blog.csdn.net/u011364306/article/details/49276717
修改归档日志的路径,将归档日志放到其他不受限制的路径下来解决这个问题,可通过下面的SQL来修改归档日志的存放路径。
这里特别要注意location参数,并且指定的目录要存在并且有Oracle的权限
重新启动数据库,查看归档路径是否修改成功
可以通过切换日志,查看归档路径下是否有归档日志产生来验证归档路径设置是否正确,可以通过下面的命令切换日志
归档格式: