[转帖]一个ORA-03106错误处理过程和其它_MySQL, Oracle及数据库讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  MySQL, Oracle及数据库讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 2544 | 回复: 0   主题: [转帖]一个ORA-03106错误处理过程和其它        下一篇 
    本主题由 koei123 于 2015-6-2 9:08:47 移动
zhsgood
注册用户
等级:列兵
经验:102
发帖:70
精华:0
注册:2011-11-28
状态:离线
发送短消息息给zhsgood 加好友    发送短消息息给zhsgood 发消息
发表于: IP:您无权察看 2014-10-27 10:19:35 | [全部帖] [楼主帖] 楼主

一个ORA-03106错误处理过程和其它
客户的应用程序在插入记录时遇到ora-03106错误。alert文件没有错误信息。

1. 查oracle错误信息

Cause: The communication path between Oracle and the user task has stopped. This is an internal error message not usually issued.
Action: Contact Oracle Support Services.


2. 要alert文件
没有相应错误记录
3. 查google

Troubleshooting
===============
Two-task common errors are generally RDBMS related issues, but could be caused by a problem with SQL*Net, or an application (i.e. Pro*C).
ORA-03106
======== Possible reasons for the ORA-03106 errors include:
1. Incompatibilities between the client application and the RDBMS server.
For example, version incompatibilities, or a client trying to use a feature not supported by the database kernel.
2. When using database links or gateways.
3. Network or SQL*Net problems.
4. Corruptions.
5. PL/SQL - language related.
RDBMS - Troubleshooting two-task common errors
==============================================
1. Check for NLS incompatibilities between the client and server. This is a very popular cause of the ORA-03106 error.
2. Check the alert log and RDBMS trace files for any pertinent information / errors that coincide with receiving the ORA-03106 error.
3. Try to get a testcase and reproduce the problem in-house.
4. If a testcase is not possible, ask for SQL*Net trace files, SQL traces, and try setting event 3106 to obtain the error stack.
5. In extreme circumstances, this could indicate that a shared memory segment used by Oracle is corrupted. You will have to shut down the database, possibly using the abort option. Make sure all semaphores have been released by using the IPCS command on Unix. Oracle uses semaphores to control concurrency between all of the background processes (pmon, smon, drwr, lgwr, and oracle shadow processes). Semaphores are also used to control Two-Task communication between the user process and the shadow process.
6. Try and narrow down the code that may be causing it. For example it might have started to happen after increasing the number of parameters in a PL/SQL block or when using certain values for bind variables, etc.
7. If we still do not make headway, file a bug under RDBMS, but we still may need some or all of the above information as indicated above


4. 让客户查客户端的NLS_LANG(服务器是GBK)
客户端zhs16cgb231280.
让客户端把客户端的修改维gbk测试。不再报错。

5. 其它

可能的进一步思路。
可以考虑客户端重启, 服务器上监控到新的oracle进程,然后trace 该进程,获得其执行的sql.
到服务器上用sqlplus连接执行测试。

--转自 北京联动北方科技有限公司

该贴由koei123转至本版2015-6-2 9:08:47



赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论