ORA-03114乌龙处理

简介:

接到中心工单,派往客户现场处理了一件特别乌龙的故障。

故障描述:应用程序执行某个select,update时应用程序的log报如下错误信息,程序无法更新更新某个表:

[200065640] 01-24 18:01:01.233136 [     13490] [libUserFunDb30_0.ec][554] update t_clear_journal failed, CLEARTRSNO =[20130124107200065640] SQLCODE = [-3114] SQLTEXT=[ORA-03114: 未连接到 ORALCE] [libUserFunDb30_0.ec:554]

       alert里面没有 ora-03114错误信息,应用程序所在的客户端上执行sqlplus 登陆到数据库,做一个操作select操作后,这个会话30分钟不做任何操作。

       客户端是Red Hat Enterprise Linux Server release 6.2 (Santiago),只是安装的10201_database_linux_x86_64.cpio 软件(没有装库)作为oracle client端使用。操作系统包依赖包:全部装好

oracle db 10g rac 10.0.0.5 版本、操作系统 aix 5L3。

 

之前我记得接触过PLSQL Developer中有一个参数tools中add debug information when compiling如果这个参数已经启用,会引发ORA-03114的错误。询问最近是否做过网络改动,客户回答没有任何改动、而且其他一个域里面的机器没有任何问题。

我想还原一下环境,看看是否报错。编写了一个脚本:

 

export ORACLE_SID=gxb_pay

export ORACLE_BASE=/oracle

export ORACLE_HOME=/oracle/product/10.2.0

export PATH=$PATH:$ORACLE_HOME/bin

 

sqlplus "pay/xxx@gxb" << EOF

select  sysdate from dual;

exec dbms_lock.sleep(1800);

select  sysdate from dual;

exec dbms_lock.sleep(3600);

select  sysdate from dual;

exec dbms_lock.sleep(3600);

EOF

 

然后查看了监听日志,tns配置,process,session数,用户概要文件中profile也没有指定会话超时时间,该看的都看了一遍。

果然如果停止半小时后,如果没有新的交易,那么会报ORA-03114错误。去应用处与应用人员核对,是半小时就会报错,还是平时几分钟也有。应用人员没有准确信息反馈,只说一般半小时就会报错。后询问相关系统负责人,可能是系统负责人没有接到任何的邮件通知,或者邮件里面没有标注会话等待30分钟后,再进行链接就会报错的字样。他说可能是juniper防火墙策略问题,Cisco的防火墙2小时自己退出。juniper墙30分钟自动退出。果然查看日志,很多告警信息。剩下的就是应用那边完善应用代码中检测机制的问题了。果断闪人~~~

 

本文转自yangjunfeng 51CTO博客,原文链接:http://blog.51cto.com/yangjunfeng/1126154



相关文章
|
Linux 开发工具
Redhat7.x 修改阿里云yum源
redhat系统中,如果你想要更新yum仓库,它会提示让你注册才能更新,因为centos和redhat基本相同,所以我把yum这一套全换成centos的。
6028 1
|
编解码 算法 Java
构建高效的Android应用:内存优化策略详解
随着智能手机在日常生活和工作中的普及,用户对移动应用的性能要求越来越高。特别是对于Android开发者来说,理解并实践内存优化是提升应用程序性能的关键步骤。本文将深入探讨针对Android平台的内存管理机制,并提供一系列实用的内存优化技巧,以帮助开发者减少内存消耗,避免常见的内存泄漏问题,并确保应用的流畅运行。
|
Python
python numpy安装
一、python下的numpy安装方法 第一步:安装python,这里不做介绍。 第二步:打开cmd看python是否安装成功。 第三步:输入 python -m pip install -U pip 安装pip文件,pip文件一般在python安装包的script目录下。
5627 0
|
缓存 Linux 开发工具
CentOS 7- 配置阿里镜像源
阿里镜像官方地址http://mirrors.aliyun.com/ 1、点击官方提供的相应系统的帮助 :2、查看不同版本的系统操作: 下载源1、安装wget yum install -y wget2、下载CentOS 7的repo文件wget -O /etc/yum.
253941 0
|
安全 编译器 C++
C++一分钟之-编译时计算:constexpr与模板元编程
【6月更文挑战第28天】在C++中,`constexpr`和模板元编程用于编译时计算,提升性能和类型安全。`constexpr`指示编译器在编译时计算函数或对象,而模板元编程通过模板生成类型依赖代码。常见问题包括误解constexpr函数限制和模板递归深度。解决策略包括理解规则、编写清晰代码、测试验证和适度使用。通过实战示例展示了如何使用`constexpr`计算阶乘和模板元编程计算平方。
227 13
|
机器学习/深度学习 PyTorch TensorFlow
Pytorch 与 Tensorflow:深度学习的主要区别(1)
Pytorch 与 Tensorflow:深度学习的主要区别(1)
|
网络协议 安全 Linux
|
敏捷开发 安全 数据可视化
【软件工程题库】第一章 软件工程概述
【软件工程题库】第一章 软件工程概述
1345 1
|
SQL Java 数据库连接
SQL游标的基本使用方法与示例
SQL游标的基本使用方法与示例
|
API 开发者 Python
SendCloud和Aoksend邮箱API发送邮件的方法
本文介绍了如何使用Aoksend和SendCloud的API发送邮件。首先注册两个平台的账号获取API密钥和地址,然后可通过SMTP或HTTP API发送邮件。示例代码分别展示了使用SMTP API(通过`smtplib`)和HTTP API(借助`requests`库)的Python实现。在实际操作中,需确保邮件内容与收件人信息的准确性。

热门文章

最新文章