阅读: 4 评论: 0 作者: blackcat 发表于 2010-06-13 15:08 原文链接
前线一个项目应急,说是应用挂起了,数据库也登陆不上去了。让我救急。
于是找到前线的兄弟,QQ远程上去(真土是不?可惜没别的招),获得系统信息如下:
OS:Windows Server 2003 Version V5.2 Service Pack 2
Oracle:10.1.0.2.0
OS的内存是8GB的,但是是个32位的系统。这个真悲剧。
Oracle的版本居然是个10.1.0.2的,要命,这居然是准备生产环境用的。
Oracle的内存配置,
内存配置 sga_max_size = 1577058304
__shared_pool_size = 528482304
shared_pool_size = 528482304
__large_pool_size = 109051904
large_pool_size = 109051904
__java_pool_size = 50331648
java_pool_size = 50331648
sga_target = 1367343104
看了看,使用了大概1.7GB内存。其中PGA大概500M。
前线同志说连不上去,但是我没发现这个问题,应该是一段时间后,oracle自动清理了一些死链接吧。不得不说,这个应用做的,真是差,后来知道,他们居然不控制连接数目,还是用的java的连接池,都不确定连接池中连接什么时候释放。这些都是注定要杯具的原因。
不管那么多,先看看oracle的alert吧,打开,居然最开始的信息被哪个杀千刀的给清除了,只剩下出问题的日志了。
主要信息由以下几组:
1,ORA-07445
Thu Jun 10 19:24:19 2010
Errors in file c:\oracle\product\10.1.0\admin\orcl\bdump\orcl_mmon_3940.trc:
ORA-07445: exception encountered: core dump [ACCESS_VIOLATION] [0x122A20B] [] [] [] []
2,ORA-04030
ORA-04030Thu Jun 10 14:00:05 2010
Errors in file c:\oracle\product\10.1.0\admin\orcl\bdump\orcl_j000_2884.trc:
ORA-04030: out of process memory when trying to allocate 680032 bytes (joxp heap,u:CTX_SEG)
ORA-04030: out of process memory when trying to allocate 123404 bytes (QERHJ hash-joi,kllcqas:kllsltba)
ORA-04030: out of process memory when trying to allocate 680032 bytes (joxp heap,u:CTX_SEG)
ORA-04030: out of process memory when trying to allocate 680032 bytes (joxp heap,u:CTX_SEG)
3,这个居然让oracle直接崩溃退出了。
jobThu Jun 10 14:00:07 2010
Errors in file c:\oracle\product\10.1.0\admin\orcl\bdump\orcl_j000_2884.trc:
ORA-12012: error on auto execute of job 1
ORA-04030: out of process memory when trying to allocate 680032 bytes (joxp heap,u:CTX_SEG)
ORA-06512: at "WKSYS.WK_ERR", line 10
ORA-06512: at "WKSYS.WK_ERR", line 53
ORA-06512: at "WKSYS.WK_ERR", line 71
ORA-06512: at "WKSYS.WK_ERR", line 105
ORA-06512: at "WKSYS.WK_JOB", line 210
ORA-04030: out of process memory when trying to allocate 123404 bytes (QERHJ hash-joi,kllcqas:kllsltba)
ORA-06512: at "WKSYS.WK_JOB", line 444
ORA-04030: out of process memory when trying to allocate 680032 bytes (joxp heap,u:CTX_SEG)
ORA-04030: out of process memory when trying to allocate 680032 bytes (joxp heap,u:CTX_SEG)
ORA-06512: at line 1
看到第一个7455,我就怕了。这个玩意儿好久不见,又重出江湖了。出现在了哥的江湖。
第一个问题。
先仔细研究了下,所有的报错都是和MMON有关系。这个应该是ASSM的bug。既然是ASSM,我的参数设置差不多了,我就先不管了,看看你有什么问题。
第二个问题,也是内存相关问题,大不了就是任务失败,先略过。
再看第三个问题。
同样,一直没注意,从没见过这么一个任务。居然让oracle崩溃了。
开始我以为是产品代码,后来查了下,居然,是oracle自带的。具体干嘛的也没管他。
想想oracle有个自动分析的任务,10g之后自动运行的,先停了。不理他了。
然后开始解决应用挂起的问题。
评论: 0 查看评论 发表评论
众里寻你千百度,百度期待您的加盟
最新新闻:
· 黑莓手机今起在国内零售渠道正式发售(2010-06-18 13:03)
· 大一学生利用音频分析软件破译银行密码(2010-06-18 13:00)
· Sencha Touch,真正跨平台的手机应用框架(2010-06-18 12:58)
· Google 确认加密搜索将换到新域名(2010-06-18 12:54)
· 关于腾讯收购康盛创想的跟踪报道(2010-06-18 11:56)
编辑推荐:程序员这口饭-职业规划解决方案
网站导航:博客园首页 个人主页 新闻 闪存 小组 博问 社区 知识库
文章来源:
http://www.cnblogs.com/aqhistory/archive/2010/06/13/1757802.html