Oracle数据库数据恢复、性能优化

找回密码
注册
搜索
热搜: 活动 交友 discuz
发新帖

14

积分

0

好友

1

主题
1#
发表于 2012-5-17 20:52:23 | 查看: 6274| 回复: 4
数据库是RAC 双节点,版本为11.1.0.7.0
节点为DA1和DA2  
DA1hung住  
附件为DA1上当时抓去得hunganlyze-trace,pmon的trace
AWR是DA2节点上的

数据库hung.rar

128.97 KB, 阅读权限: 255, 下载次数: 2

售价: 200 金钱  [记录]  [购买]

由于不方便传播请各位见谅

2#
发表于 2012-5-17 22:37:51
HANG的问题 请放在 管理版

回复 只看该作者 道具 举报

3#
发表于 2012-5-17 22:46:45
ODM DATA:

        HP-UX IA (64-bit) +11.1.0.7.0

Memory (GB) 物理内存 31.93 GB   8 CPU

Shared Pool Size:  2,048M

Elapsed:                 31.03 (mins)                  
DB Time:                 921.22 (mins)                  ==> DB TIME / Elapsed = 29 Load 负载很高

TOP 5 中 row cache lock和 gc buffer busy acquire占了大头

Event        Waits        Time(s)        Avg wait (ms)        % DB time        Wait Class
row cache lock        5,986        14,880        2486        26.92        Concurrency
gc buffer busy acquire        12,649        12,631        999        22.85        Cluster
reliable message        11,045        10,873        984        19.67        Other
DB CPU                 7,112                 12.87         
DFS lock handle        198        5,502        27790        9.95        Other



        Begin        End
Host Mem (MB):        32,699.8        32,699.8
SGA use (MB):        25,294.6        25,294.6
PGA use (MB):        4,897.7        4,971.2
% Host Mem used for SGA+PGA:        92.33        92.33


SGA +PGA 占用了 92% 的物理内存 , SGA + PGA 明显过大了  


sql execute elapsed time        53,946.30        97.60
sequence load elapsed time        14,531.21        26.29
DB CPU        7,111.66        12.87



sequence load elapsed time 耗费了 14,531的 DB TIME , 对应的SQL 语句为  354kw4ffdxzhz   


SELECT SEQ_KR_SYS_LOG.NEXTVAL FROM DUAL



造成大量 gc buffer busy acquire 等待的是 语句  其cluster wait time 达到 10,318.46s  
8gzm7559hqu8s   


SELECT                    a.tablespace_name tablespaceName,                    round(a.total, 0)  TableSpaceSize,                    round(b.free, 0)   TableSpaceFreeSize               FROM   (select tablespace_name,  sum(bytes) / 1024 / 1024 total                          from dba_data_files                       group by tablespace_name) a,                      (select tablespace_name,  sum(bytes) / 1024 / 1024 free                           from dba_free_space                       group by tablespace_name) b               WHERE a.tablespace_name = b.tablespace_name        


为什么 会造成  gc buffer busy acquire 需要结合另一个节点的AWR

Dictionary Cache Stats (RAC)

Cache    GES Requests    GES Conflicts    GES Releases
dc_awr_control    2    0    0
dc_global_oids    9    0    0
dc_histogram_defs    91    0    0
dc_objects    46    0    0
dc_segments    893    0    0
dc_sequences    74    1    0
dc_tablespace_quotas    874    0    0
outstanding_alerts    118    0    0


dc_sequences 曾出现过 GES conflicts 这是导致 SEQ_KR_SYS_LOG.NEXTVAL HANG住的原因



初步的结论:

1. 检查 SEQUENCE SEQ_KR_SYS_LOG的DDL ,确认是否使用了 CACHE NOORDER
2. 减少SGA 和 PGA的内存占用率, INSTANCE目前使用了 90%的物理内存 可以估计存在严重的SWAP
3. SQL ID 8gzm7559hqu8s   的cluster wait 应当从inst 1 去找原因

回复 只看该作者 道具 举报

4#
发表于 2012-5-17 23:01:47
今后再以这种 《帮忙分析下数据库hung的原因》 毫无意义的标题发帖的 性能帖子 一律不分析

回复 只看该作者 道具 举报

5#
发表于 2012-5-23 22:22:39
嗯 好的 知道了
还是谢谢 刘大的回复

回复 只看该作者 道具 举报

您需要登录后才可以回帖 登录 | 注册

QQ|手机版|Archiver|Oracle数据库数据恢复、性能优化

GMT+8, 2024-12-26 01:28 , Processed in 0.056425 second(s), 25 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部
TEL/電話+86 13764045638
Email service@parnassusdata.com
QQ 47079569