Quancs-93 2019-03-13 15:01 采纳率: 0%
浏览 3147

ORA-03113:end-of-file on communication channel 报错

ORA-03113:end-of-file on communication channel
process ID:4268
session id:213 serial number:12345

小白一枚,我是连接公司的数据库之后,打开包体里的存储过程提示这个问题,表格什么的能查看结构,也能查询。但是存储过程不能调用不能查看。
数据库不是本机的,我的同事都能打开,只有我打不开存储过程。plsql developer也重装了,然而没效果。有哪位大牛知道怎么回事吗

  • 写回答

1条回答 默认 最新

  • pangwenyu1989620 2019-03-13 15:19
    关注

    解决思路(ORACLE11G):

    查看orcle启动日志,确定具体是什么原因引起的错误。

    1、确定日志位置

    操作日志:$ORACLE_HOME/startup.log

    启动日志:$ORACLE_BASE/diag/rdbms/ora11g/ora11g/trace/alert_ora11g.log (ora11g为SID值)

    启动日志如果查找不到,请到trace目录下执行 ls -alcr | grep alert (c时间排序、r倒序)

    2、打开日志

    tail -f -n 500 alert_ora11g.log ,查看错误,截取片段如下

    Errors in file /data00/oracle/app/oracle/diag/rdbms/ora11g/ora11g/trace/ora11g_m000_9340.trc:
    ORA-19815: WARNING: db_recovery_file_dest_size of 8589934592 bytes is 100.00% used, and has 0 remaining bytes available.


    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.
    Tue May 03 11:29:14 2011
    ALTER SYSTEM SET db_recovery_file_dest_size='8G' SCOPE=BOTH;
    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.


    原因找到啦,归档日志满了。

    4、解决办法有三个:

    1.将归档设置到其他目录,修改alter system set log_archive_dest = 其他路径

    2.转移或者删除闪回恢复区里的归档日志。

    3.增大闪回恢复区。alter system set db_recovery_file_dest_size=8G;

    5、用其他方式启动数据库

    #sqlplus /nolog

    conn / as sysdba;

    shutdown immediate;

    startup mount;(startup nomount只是启动了实例而没有启动数据库,startup mount启动了实例,并加载了数据库,但是数据库没有打开,startup是最全的,实例,数据库加载,数据库打开都完成。)

    startup mount我这里可以成功启动。

    show parameter db_recovery_file_dest_size //显示当前回复区大小

    6、具体步骤。举一个例子,删除过期日志。

    $RMAN

    connect target /

    crosscheck archvelog all;

    delete expired archivelog all;

    exit

    评论

报告相同问题?

悬赏问题

  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥200 uniapp长期运行卡死问题解决
  • ¥15 latex怎么处理论文引理引用参考文献
  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?
  • ¥15 乘性高斯噪声在深度学习网络中的应用