标签:基本 dump none lap oracle数据库 sql语句 分页 str 否则
今天oracle数据库莫名其妙地出现登录后执行报“通信通道的文件结束错误处理”的错误,同时搞了几天没搞好,交给我来处理,也是挺头晕的。
通过多次的调试最后锁定在执行分页SQL语句时候会报03113的错误,于是修改分页SQL语句,基本上能尝试的都尝试了。最后还是无动于衷,
该报错的地方还是报错。
ora-03113 通信通道的文件结束错误处理
编辑D:/oracle/ora92/network/admin/sqlnet.ora文件,将LNET.AUTHENTICATION_SERVICES= (MTC)或者SQLNET.AUTHENTICATION_SERVICES= (NTS)修改为NET.AUTHENTICATION_SERVICES= (NONE).
当日志中出现:
Mon Oct 26 17:18:08 2009
Errors in file d:/oracle/product/10.2.0/admin/orcl/udump/orcl_ora_1676.trc:
ORA-07445: 出现异常错误: 核心转储 [ACCESS_VIOLATION] [_kglLockCursor+279] [PC:0x3FE9971] [ADDR:0xB8458B4E] [UNABLE_TO_READ] []
Mon Oct 26 17:18:08 2009
Errors in file d:/oracle/product/10.2.0/admin/orcl/udump/orcl_ora_1676.trc:
ORA-07445: 出现异常错误: 核心转储 [ACCESS_VIOLATION] [_kglLockCursor+279] [PC:0x3FE9971] [ADDR:0xB8458B4E] [UNABLE_TO_READ] []
可以重启服务器,清空数据共享池
于是我就修改了数据库参数
SQL> alter system set cursor_sharing=similar;
System altered.
Elapsed: 00:00:00.00
SQL> show parameter cursor_sharing
NAME TYPE VALUE
-------- --------- -----------
cursor_sharing string SIMILAR
2 清空一下共享池
SQL> alter system flush shared_pool;
System altered.
3.重启数据库,再检查这个报错的功能,正常了!
cursor_sharing这个参数是用来告诉Oracle在什么情况下可以共享游标,即SQL重用。
Cursor_sharing参数有3个值可以设置:
1)、EXACT:通常来说,exact值是Oracle推荐的,也是默认的,它要求SQL语句在完全相同时才会重用,否则会被重新执行硬解析操作。
2)、SIMILAR:similar是在Oracle认为某条SQL语句的谓词条件可能会影响到它的执行计划时,才会被重新分析,否则将重用SQL。
3)、FORCE:force是在任何情况下,无条件重用SQL。
备注:上面所说的SQL重用,仅仅是指谓词条件不同的SQL语句,实际上这样的SQL基本上都在执行同样的业务操作。
ora-03113或者ora-12573 通信通道的文件结束出现异常错误:核心转储
标签:基本 dump none lap oracle数据库 sql语句 分页 str 否则
原文地址:https://www.cnblogs.com/yumaster/p/13275346.html