ORA-03113:通信通道的文件结尾-完美解决方案
 
oracle 文档中对这个错误这样解释:
ORA-03113 错误就是说连接到数据库的网络中断了。有些错误由于频繁出现、原因复杂而被 Oracle DBA 们戏称之为"经典的错误"。
 
 
 
完美解决方案:
1、查看系统表空间用量:
SELECT a.tablespace_name,
a.bytes total,
b.bytes used,
c.bytes free,
(b.bytes * 100) / a.bytes "% USED ",
(c.bytes * 100) / a.bytes "% FREE "
FROM sys.sm$ts_avail a, sys.sm$ts_used b, sys.sm$ts_free c
WHERE a.tablespace_name = b.tablespace_name
AND a.tablespace_name = c.tablespace_name;
 
2、分析ORA-03113主要原因
从图中主要分析SYSTEM、SYSAUX表空间用量,原因有两点:
       1)、SYSTEM中审计表aud$在数据库编程过程中,对SQL语句的编译过程,资源占用会较大,因此在sys账户下查看,
select count(*) sum from AUD$;
会得知,该数值会非常大。
 
2)、SYSAUX则进行的是AWR快照,也会进行占用较多的空间。
 
因此,出现ORA-03113,一般以上两个空间会出现严重不足情况。
3、完美解决方式
       用sys账户dba登录,两个原因一一解决:
       1)、清理AUD$审计表记录;
       Truncate table AUD$;
       清理AUD$审计表一条命令即可。
    2)、清理AWR快照步骤稍有麻烦
              select dbid, retention from dba_hist_wr_control;
         DBID           RETENTION
----------   ------------------------------------------------
1426562503   +00008 00:00:00.0
 
select min(snap_id), max(snap_id) from dba_hist_snapshot where dbid = 1426562503;
MIN(SNAP_ID) MAX(SNAP_ID)
------------ ------------
        7689         7896
exec dbms_workload_repository.drop_snapshot_range(7689, 7896,1426562503)
PL/SQL procedure successfully completed
 
select min(snap_id), max(snap_id) from dba_hist_snapshot where dbid = 1426562503;
MIN(SNAP_ID) MAX(SNAP_ID)
------------ ------------
 
AWR快照清理结束。
清理后,再去查看system表空间,对比前后结果会有明显变化,这是再进行数据库开发时,不会出现ORA-03113错误。
 
4、总结
此种解决方案,针对的是数据库开发工作较多情况下,如大量的PL/SQL的函数、包、过程的开发、编译,建议在生产环境尽量不要进行开发,或是生产环境单独将审计和快照移至专门的表空间。
 

ORA-03113:通信通道的文件结尾-完美解决方案的更多相关文章

  1. Oracle 11.2.0.1的一个Bug,客户端报ORA-03113: 通信通道的文件结尾

    半小时前,一个项目反馈应用系统部分功能报错,ORA-03113: 通信通道的文件结尾.好像是个常见的错误. 异常信息:ORA-03113: 通信通道的文件结尾 进程 ID: 2392 会话 ID: 2 ...

  2. ORA-03113:通信通道的文件结尾解决

    今天跟往常一样,登陆PL/SQL,确登陆失败,出现一个错误“ORA-01034”和“ORA-27101”如图: 然后就就通过命令提示符去登陆Oracle,去查看怎么回事,然后问题进一步出现,错误“OR ...

  3. ORA-03113 通信通道的文件结尾(ORA-19804 ORA-16038-归档空间满的处理方法)

    1.数据库启动报错SQL> startupORACLE 例程已经启动. Total System Global Area 1887350784 bytesFixed Size 2176848 b ...

  4. ORA-03113: 通信通道的文件结尾 进程 ID: 764 会话 ID: 125 序列号: 5

    昨天因为导入很久数据,最后一看是因为数据文件不够,后来就关机了.现在,开启数据库,总是报“ORA-03113: 通信通道的文件结尾” SQL> conn /as sysdba; 已连接到空闲例程 ...

  5. Oracle 11.2.0.1的又一个隐藏在ORA-03113后的bug: 通信通道的文件结尾

    近期又一个项目反馈ORA-03113错误: 通信通道的文件结尾.(jdbc程序报出的错误是:无法从套接字读取更多的数据) 发送之前处理过类似问题的解决方法(http://www.cnblogs.com ...

  6. ORA-03113:通信通道的文件结尾

    问题: 用命令startup启动实例时,报错“ORA-03113:通信通道的文件结尾”. 解决: SQL> startup mount ORACLE 例程已经启动. Total System G ...

  7. Oracle错误——ORA-03113:通信通道的文件结尾

    请参考:http://blog.csdn.net/zwk626542417/article/details/39667999 今天跟往常一样,登陆PL/SQL,确登陆失败,出现一个错误“ORA-010 ...

  8. ORA-03113:通信通道的文件结尾 解决办法

    登录Oracle时出现错误:“ORA-03113:通信通道的文件结尾” 错误排查方法 Oracle出现错误,查看trace日志寻找问题根源:D:\oracle\diag\rdbms\orcl\orcl ...

  9. ORA-03113:通信通道的文件结尾处理

     ORA-03113:通信通道的文件结尾执行:alter system set "_optimizer_join_elimination_enabled"=false; cmdsq ...

随机推荐

  1. c++ 绘制方框

    知识点: GetStdHandle函数 FillConsoleOutputCharacter函数 SetConsoleCursorPosition函数 system函数 一. GetStdHandle ...

  2. 21-[模块]-configparser

    1.configparser模块 此模块用于生成和修改常见配置文档,当前模块的名称在 python 3.x 版本中变更为 configparser. 来看一个好多软件的常见配置文件格式如下 [DEFA ...

  3. zabbix3调用接口发送短信告警

    一.需求 之前使用的邮件告警,由于经常会忽略邮件,所以有时候告警查看的并不及时,所以增加短信告警的,以便及时处理. 二.zabbix-server端的配置 # 需要在zabbix-server端打开A ...

  4. jquery ajax 上传文件和传递参数到一个接口的实现方法

    参考:https://blog.csdn.net/qq_15674631/article/details/81095284 参考:https://www.jianshu.com/p/46e6e03a0 ...

  5. SSISDB2:SSIS工程的操作实例

    SSISDB 系列随笔汇总: SSISDB1:使用SSISDB管理Package SSISDB2:SSIS工程的操作实例 SSISDB3:Package的执行实例 SSISDB4:当前正在运行的Pac ...

  6. 菜鸟vimer成长记——第3章、文件

    上一章一直在讲的是vim的文本的操作,本章主要讲的是vim的文件操作. 本章的有些概念和传统的文本编辑器也不尽相同.所以需要注意概念或者切切说是思维习惯的区别. vim 允许在一个编辑会话中编辑多个文 ...

  7. hadoop组件概念理解

    一.HADOOP 二.HIVE 三.SQOOP 1.来由和作用 sqoop由一些封装好的MR程序的jar包构成,后演变成框架,但sqoop只有map任务没有reduce任务. 用于 hdfs.hive ...

  8. 关于java学习中的一些易错点(基础篇)

    由JVM来负责Java程序在该系统中的运行,不同的操作系统需要安装不同的JVM,这样Java程序只需要跟JVM打交道,底层的操作由JVM去执行. JRE(Java Runtime Environmen ...

  9. 六大iT公司的组织结构

  10. 别再犯低级错误,带你了解更新缓存的四种Desigh Pattern

    在我们使用分布式缓存Redis或者Memcached编写更新缓存数据代码时,我们总是会犯一个逻辑错误.先删除缓存,然后再更新数据库,而后续的操作会把数据再装载的缓存中.试想,两个并发操作,一个是更新操 ...