oracle – 启动时“ORA-03113:通信通道上的文件结束”

前端之家收集整理的这篇文章主要介绍了oracle – 启动时“ORA-03113:通信通道上的文件结束”前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我一直在这里阅读帖子,关于Oracle支持,以及过去三天我能找到的任何其他地方,我已经放弃了这个问题……

Oracle数据库挂起了.关闭数据库坐了几个小时然后退出.它不会重启.服务器已重新启动. Oracle重新启动.一步一步:startup nomount工作,alter database mount工作,alter database open返回ORA-03113.这都是在本地主机上 – 而不是通过网络.机器没有运行任何类型的防火墙.

不知道如何通过ORA-03113错误?过去4.5小时我一直在印度接受电话支持,但我还没有找到任何帮助.

经过几个小时的官方Oracle支持误导,我自己研究并修复它.我在这里记录它以防其他人有这个问题.

要做到这一点,你必须是oracle用户

$su - oracle

第1步:您需要查看警报日志.它不在预期的/ var / log中.您必须运行Oracle日志读取程序:

$adrci
ADRCI: Release 11.2.0.1.0 - Production on Wed Sep 11 18:27:56 2013
Copyright (c) 1982,2009,Oracle and/or its affiliates. All rights reserved.
ADR base = "/u01/app/oracle"
adrci>

注意ADR基础.那不是安装.您需要查看房屋,以便连接到您使用的房屋.

adrci> show homes
ADR Homes:
diag/rdbms/cci/CCI
diag/tnslsnr/cci/listener
diag/tnslsnr/cci/start
diag/tnslsnr/cci/reload

CCI是家.设置它.

adrci> set home diag/rdbms/cci/CCI
adrci>

现在,您可以查看警报日志.如果它们位于/ var / log中会非常好,这样您就可以轻松地解析日志.只是停止想要和处理这个界面.至少你可以尾(我希望你有一个回滚缓冲区):

adrci> show alert -tail 100

向后滚动,直到看到错误.你想要第一个错误.第一个错误之后的任何错误都可能是由第一个错误引起的.就我而言,第一个错误是:

ORA-19815: WARNING: db_recovery_file_dest_size of 53687091200 bytes is 100.00% used,and has 0 remaining bytes available.

这是由交易引起的. Oracle不是为使用而设计的.如果您确实将大量数据输入其中,则会保存事务日志.那些进入恢复文件区域.一旦它已满(在这种情况下为50GB满).然后,Oracle就死了.根据设计,如果出现任何问题,Oracle将通过关闭来做出响应.

有两种解决方案,正确的解决方案和快速而肮脏的解决方案.快速而肮脏的是增加db_recovery_file_dest_size.首先,退出adrci.

adrci> exit

现在,进入sqlplus而不打开数据库,只需安装它(你可以在不挂载数据库的情况下执行此操作,但无论如何我都可以安装它).

$sqlplus /nolog
sql*Plus: Release 11.2.0.1.0 Production on Wed Sep 11 18:40:25 2013
Copyright (c) 1982,Oracle. All rights reserved.
sql> connect / as sysdba
Connected.
sql> startup mount

现在,您可以增加当前的db_recovery_file_dest_size,在我的情况下增加到75G:

sql> alter system set db_recovery_file_dest_size = 75G scope=both

现在,您可以再次关闭并重新启动,之前的错误应该消失.

正确的解决方法是摆脱恢复文件.您可以使用RMAN,而不是sqlPLUS或ADRCI.

$rman
Recovery Manager: Release 11.2.0.1.0 - Production on Wed Sep 11 18:45:11 2013
Copyright (c) 1982,Oracle and/or its affiliates.  All rights reserved.
RMAN> backup archivelog all delete input;

等待很长时间,你的存档日志(用完所有空间)都将消失.因此,您可以关闭/启动数据库并重新开始工作.

猜你在找的Oracle相关文章