首页
登录 | 注册

机器运行超过198天oracle数据库hang

机器运行超过198天oracle数据库hang
 
OS redhat as4 u2,DB ORACLE 10201
作者:
olivenan@hotmail.com
早晨检查数据库发现,系统负载很高,
检查报警日志,没有错误报出,
有好多sqlplus进程,于是将非oracle系统进行kill掉,负载正常
于是使用sqlplus "/as sysdba"登陆数据库,发现无法登陆
于是使用sqlplus -prelim "/ as sysdba"同样无法登陆,于是判定数据库hang了。
使用strace跟踪sqlplus,得到一些看不懂的内容
[oracle@CCN-BJ-5-5D2 ~]$ strace sqlplus "/as sysdba" 2>&1 |less
execve("/u01/app/oracle/product/10.2.0/db_1/bin/sqlplus", ["sqlplus", "/as sysdba"], [/* 29 vars */]) = 0
uname({sys="Linux", node="CCN-BJ-5-5D2", ...}) = 0
brk(0)                                  = 0x804a000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/u01/app/oracle/product/10.2.0/db_1/lib/tls/i686/sse2/libsqlplus.so", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/u01/app/oracle/product/10.2.0/db_1/lib/tls/i686/sse2", 0xbfffeeac) = -1 ENOENT (No such file or directory)
open("/u01/app/oracle/product/10.2.0/db_1/lib/tls/i686/libsqlplus.so", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/u01/app/oracle/product/10.2.0/db_1/lib/tls/i686", 0xbfffeeac) = -1 ENOENT (No such file or directory)
open("/u01/app/oracle/product/10.2.0/db_1/lib/tls/sse2/libsqlplus.so", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/u01/app/oracle/product/10.2.0/db_1/lib/tls/sse2", 0xbfffeeac) = -1 ENOENT (No such file or directory)
open("/u01/app/oracle/product/10.2.0/db_1/lib/tls/libsqlplus.so", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/u01/app/oracle/product/10.2.0/db_1/lib/tls", 0xbfffeeac) = -1 ENOENT (No such file or directory)
open("/u01/app/oracle/product/10.2.0/db_1/lib/i686/sse2/libsqlplus.so", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/u01/app/oracle/product/10.2.0/db_1/lib/i686/sse2", 0xbfffeeac) = -1 ENOENT (No such file or directory)
open("/u01/app/oracle/product/10.2.0/db_1/lib/i686/libsqlplus.so", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/u01/app/oracle/product/10.2.0/db_1/lib/i686", 0xbfffeeac) = -1 ENOENT (No such file or directory)
open("/u01/app/oracle/product/10.2.0/db_1/lib/sse2/libsqlplus.so", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/u01/app/oracle/product/10.2.0/db_1/lib/sse2", 0xbfffeeac) = -1 ENOENT (No such file or directory)
open("/u01/app/oracle/product/10.2.0/db_1/lib/libsqlplus.so", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0@H\1\000"..., 512) = 512
...
lseek(6, 1024, SEEK_SET)                = 1024
read(6, "\25\7\'\0072\7>\7j\7\276\17$\'\6K5S\24TfT\307T(VsV\222"..., 86) = 86
times(NULL)                             = -2140869880
times(NULL)                             = -2140869880
times(NULL)                             = -2140869880
times(NULL)                             = -2140869880
times(NULL)                             = -2140869880
times(NULL)                             = -2140869880
times(NULL)                             = -2140869880
times(NULL)                             = -2140869880
times(NULL)                             = -2140869880
times(NULL)                             = -2140869880
[oracle@CCN-BJ-5-5D2 admin]$ ps -ef|grep ora
oracle    4243     1  0  2007 ?        01:15:30 ora_psp0_vipbill
oracle    4245     1  0  2007 ?        01:16:30 ora_mman_vipbill
oracle    4247     1  0  2007 ?        03:01:13 ora_dbw0_vipbill
oracle    4249     1  0  2007 ?        06:16:19 ora_lgwr_vipbill
oracle    4251     1  0  2007 ?        01:46:55 ora_ckpt_vipbill
oracle    4253     1  0  2007 ?        02:35:54 ora_smon_vipbill
oracle    4255     1  0  2007 ?        01:14:33 ora_reco_vipbill
oracle    4257     1  0  2007 ?        01:22:21 ora_cjq0_vipbill
oracle    4259     1  0  2007 ?        01:24:14 ora_mmon_vipbill
oracle    4261     1  0  2007 ?        01:17:34 ora_mmnl_vipbill
oracle    4263     1  0  2007 ?        01:14:29 ora_d000_vipbill
oracle    4265     1  0  2007 ?        00:00:00 ora_s000_vipbill
oracle    4345     1  0  2007 ?        02:29:16 ora_arc0_vipbill
oracle    4347     1  0  2007 ?        02:28:14 ora_arc1_vipbill
oracle    4402     1  0  2007 ?        01:15:12 ora_qmnc_vipbill
oracle    4485     1  0  2007 ?        01:13:51 ora_q000_vipbill
oracle   19170     1  0 Mar23 ?        01:15:03 ora_a001_vipbill
oracle   19172     1  0 Mar23 ?        01:15:57 ora_p000_vipbill
oracle   19174     1  0 Mar23 ?        00:02:12 ora_p001_vipbill
oracle   24168     1  0 Apr02 ?        00:00:00 ora_q002_vipbill
oracle    9708     1  6 Apr02 ?        01:16:11 ora_m000_vipbill
root     23823 23775  0 09:25 pts/0    00:00:00 su - oracle
oracle   23824 23823  0 09:25 pts/0    00:00:00 -bash
oracle    4241     1  0  2007 ?        01:16:12 ora_pmon_vipbill
root      1253 28005  0 10:29 pts/3    00:00:00 su - oracle
oracle    1254  1253  0 10:29 pts/3    00:00:00 -bash
oracle   19412     1 15 11:42 ?        00:12:31 oraclevipbill (LOCAL=NO)
oracle   19714     1 15 11:42 ?        00:12:16 oraclevipbill (LOCAL=NO)
oracle   20060     1 15 11:42 ?        00:12:31 oraclevipbill (LOCAL=NO)
oracle   20259     1 15 11:42 ?        00:12:43 oraclevipbill (LOCAL=NO)
oracle   20599     1 15 11:42 ?        00:12:28 oraclevipbill (LOCAL=NO)
oracle   22751     1 15 11:43 ?        00:12:25 oraclevipbill (LOCAL=NO)
oracle    9373 23824  0 13:02 pts/0    00:00:00 ps -ef
oracle    9374 23824  0 13:02 pts/0    00:00:00 grep ora
[oracle@CCN-BJ-5-5D2 admin]$
[root@CCN-BJ-5-5D2 ~]# uptime
13:14:27 up 199 days, 16:41,  3 users,  load average: 6.90, 18.59, 23.06
[root@CCN-BJ-5-5D2 ~]#
查看系统运行时间是199天,而数据库出现故障是在前一天,说明数据库在198天出的错,
这个现象跟bug 4612267 十分相似,唯一不同的是bug 4612267 提到的运行时间是248天。
从google和baidu搜索发现也有其他人在198天出现类似现象,所以可以初步判断是bug,
将所有oracle进程杀掉,数据库仍然不能连接,只能进行重启机器
[oracle@CCN-BJ-5-5D2 admin]$ ps -ef|grep ora
root     23823 23775  0 09:25 pts/0    00:00:00 su - oracle
oracle   23824 23823  0 09:25 pts/0    00:00:00 -bash
root      1253 28005  0 10:29 pts/3    00:00:00 su - oracle
oracle    1254  1253  0 10:29 pts/3    00:00:00 -bash
oracle   10994 23824  0 13:13 pts/0    00:00:00 ps -ef
oracle   10995 23824  0 13:13 pts/0    00:00:00 grep ora
[oracle@CCN-BJ-5-5D2 admin]$ sqlplus -prelim "/ as sysdba"

解决方案:将数据库升级到10203
https://metalink.oracle.com/metalink/plsql/f?p=130:14:12762944304069690854::::p14_database_id,p14_docid,p14_show_header,p14_show_help,p14_black_frame,p14_font:NOT,4612267.8,1,1,1,helvetica
Bug 4612267 - OCI client spins when machine uptime >= 249 days
文档 ID:  注释:4612267.8
Description
OCI clients may spin once the machine has been up for longer than
249 days (24.9 days on some machines).
The spin will show repeated calls to times() from sltrgatime64().

https://metalink.oracle.com/metalink/plsql/f?p=130:14:12762944304069690854::::p14_database_id,p14_docid,p14_show_header,p14_show_help,p14_black_frame,p14_font:NOT,338461.1,1,1,1,helvetica
SQL*Plus With Instant Client 10.2.0.1 Hangs, When System Uptime Is More Than 248 Days
文档 ID:  注释:338461.1
This is a known, unpublished bug.
Bug 4612267 OCI CLIENT IS IN AN INFINITE LOOP WHEN MACHINE UPTIME HITS 248 DAYS
当机器运行时间达到248天,OCI客户端会进入一个无限死循环,意思是不是当我们此时执行sqlplus /as sysdba就进入死循环了,无法登陆,并且资源耗费巨大。
第一篇文档中提到当系统运行超过249天就会出错,第二篇说是超过248天,估计是Oracle方面也不太确定到底是哪天。呵呵。
并且第一篇提到某些机器上24.9天就有可能出现该错误,那么我们是不是可以猜测一下在24.9的倍数也会出现问题呢
24.9*8=199.2
24.8*8=198.4
跟198天很接近
重新启动机器,然后数据库启动正常,随后找机会将其升级到10203

itpub中也有人提到该错误
http://www.itpub.net/viewthread.php?tid=832227&extra=&page=1
情况跟我类似,最后解决方法也是重启机器。

相关文章

  • 在本文中,您将了解到如何在 Visual Basic .NET (VB.NET) 和 Visual C# .NET (C#) 中使用数据库事务.具体来讲,您将系统学习数据库事务.在 .NET 程序中使用 OracleTransaction ...
  • 有关Oracle字段类型的相关信息可以查阅oracle技术网.下面摘抄一些有关blob.clob等类型的说明.又便于大家的了解. 字段类型:blob,clob,nclob 说明:三种大型对象(LOB),用来保存较大的图形文件或带格式的文本文 ...
  • 在AIX中,如果想linux那样只是在/下创建目录来安装oralce的话,那将会占用/ 的大量空间,比如oracle的数据文件和日志文件.随着文件的增大你需要不停地扩展/的大小.如果/ 满的话将会对操作系统造成重大的影响,而不再是简简单单的 ...
  • Oracle数据库 测试平台 - Database 11gR2/12cR2 --数据字典表级信息 SELECT USER,T.TABLE_NAME,TC.COMMENTS,DECODE(C.CONSTRAINT_NAME,NULL,'N', ...
  • 在操作系统中安装oracle数据库的总体思路如下: 1.查看操作系统的软硬件信息,包括处理器的类型.操作系统的版本等等.再去oracle官方网站下载对应的数据库及安装文档. 2.按照安装文档的步骤开始做安装前的准备工作     再次确定操作 ...
  • 内网主机上安装了Oracle数据库,只能在局域网内访问,怎样从公网也能访问本地Oracle数据库? 1. 准备工作 执行命令java -version检查Java安装和配置是否正确. 默认安装的Oracle数据库端口是1521. 2.1 下 ...

2020 unjeep.com webmaster#unjeep.com
12 q. 0.013 s.
京ICP备10005923号