ORA-03113: end-of-file on communication channel 解决方案

129 篇文章 7 订阅

问题描述

Oracle启动时报如下错误:

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.

1 方法一 清理归档日志文件方法

双实例的oracle启动—注意:首先要export ORACLE_SID=要操作的实例名 保证自己操作的实例是需要删除归档日志文件的实例,然后进行删除步骤:

  • 启动到mount状态下:
su - oracle
sqlplus /nolog
  • 进入到sql命令窗口下:
conn /as sysdba
startup mount;
  • 查看恢复区(闪回区)位置及大小:
SQL> show parameter db_recovery;
  • 查询当前的使用状态
SQL> select file_type,PERCENT_SPACE_USED,NUMBER_OF_FILES from v$flash_recovery_area_usage;
  • 物理清除归档路径下的日志文件:
    退出sql命令窗口:
cd /u01/flash_recovery_area/DMDEV/archivelog---进入到对应的归档实例日志目录
  • 清理不需要的归档日志—清理前请对需要的日志做好备份:
    rm -rf 不需要的日志文件目录
    物理日志文件清理后,还需要在rman管理中清理一次,不然还是显示的空间没有释放

  • 进入rman命令行:通过rman管理工具清理。
    连接上数据库实例:

RMAN> connect target sys/sys_passwd
RMAN> crosscheck backup;
RMAN> delete obsolete;
RMAN> delete expired backup;
RMAN> crosscheck archivelog all;
RMAN> delete expired archivelog all;

此步会有提示,输入YES+ENTER

  • 退出rman删除完成,重新连接数据库

  • 删除完毕后查看结果:

$ sqlplus /nolog
SQL>  connect /as sysdba
SQL> select * from V$FLASH_RECOVERY_AREA_USAGE;
  • 重新启动数据库 ok。

2 方法2:增加 db_recovery_file_dest_size 大小

SQL> alter system set db_recovery_file_dest_size=2000M;

System altered.

SQL> show parameter db_recovery_file_dest_size

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest_size           big integer 2000M

最后打开数据库,成功

SQL> alter database open;

Database altered.
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值