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

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

0

积分

1

好友

5

主题
1#
发表于 2013-9-5 16:05:04 | 查看: 10139| 回复: 16
Maclean ,你好!
    系统环境:

    Oracle 11.2.0.2 RAC for IBM  AIX 6.1 两个节点

    附件为9月4日上午 9:08分左右 ,业务出现大面积hang住,通过ASH看到里面有‘CSS initialization’ 这个不太常见的等待事件。
(此hang现象此前经常发生),现在客户怀疑跟ASH里列出的如下语句有关:
SELECT A.*, B.* FROM AMSH_MEDIAPPLY A, (SELECT MAINID, COUNT(1) AS SUMCOUNT, SUM(AMOUNT1) AS SUMAMOUNT1, SUM(AMOUNT2) AS SUMAMOUNT2, SUM(AMOUNT3) AS SUMAMOUNT3 FROM AMSH_MEDIAPPLYDTL GROUP BY MAINID) B, ((SELECT DISTINCT C.MAINID FROM AMSH_MEDIAPPLYDTL C, (SELECT MEDIID FROM TABLE(SBAS_MEDIIDBYTYPE(:B1 ))) D WHERE C.MEDIID = D.MEDIID)) E WHERE A.OURID = B.MAINID AND (:B10 IS NULL OR (SENDERID IN (SELECT ANYID AS BTYPE FROM TABLE(SPLITSTRINGBYSIGN(:B10 , ', '))))) AND (:B9 IS NULL OR (LA NDERID IN (SELECT ANYID AS BTYPE FROM TABLE(SPLITSTRINGBYSIGN(:B9 , ', '))))) AND ((A.LANDERNAME = 0 AND OURSTATE IN (SELECT ANYID AS STATE FROM TABLE(SPLITSTRINGBYSIGN(:B11 , ', ')))) OR (A.LANDERNAME > 0 AND A.OURSTATE != '317001' AND A.OURSTATE IN (SELECT ANYID AS STATE FROM TABLE(SPLITSTRINGBYSIGN(:B11 , ', '))))) AND (:B8 = 0 OR INOUT = :B8 ) AND (:B7 = 0 OR BILLTYPE = :B7 ) AND (:B6 IS NULL OR A.SENDSUMCODE = :B6 OR A.SENDCODE = :B6 ) AND (:B5 IS NULL OR BILLDATE >= TO_DATE(:B5 , 'yyyy-mm-dd hh24:mi:ss')) AND (:B4 IS NULL OR BILLDATE <= TO_DATE(:B4 , 'yyyy-mm-dd hh24:mi:ss')) AND (:B3 = 0 OR A.OURID IN (SELECT B.MAINID FROM AMSH_MEDIAPPLYDTL B WHERE B.MEDIID = :B3 )) AND (A.OURID = E.MAINID ) AND (:B2 = 0 OR A.OURID IN (SELECT D.MAINID OURID FROM AMSH_MEDIAPPLYDTL D LEFT JOIN SBAS_CHARGE E ON D.MEDIID = E.OURID WHERE E.OURTYPE = :B2 )) ORDER BY A.CREATETIME

因为每次hang的时候 ,总是会存在这个业务执行。 但本人想不出来,此语句 与 'CSS INITIALIZATION'有何关系。

经查MOS,好象也有过类似,但好象没有解决方法:
Bug 12416879 : BAD DATABASE PERFORMANCE - WAIT EVENTS CSS INITIALIZATION, CSS OPERATION: ACTION

Bug 17182629 : SESSIONS WAITING ON EVENT "CSS INITIALIZATION"

Bug 14326326 : HIGH NUMBER OF CSS INITIALIZATION AND CSS OPERATION ACTION WAIT EVENTS.EVEN AFTE

另,已针对ASH里关于 ‘DFS lock handle’ event ,调整了相关的sequence 的Cache ,但好象 hang  与此无关。

  先谢谢 Maclean !

ashrpt_1_0904_0929.html

50.95 KB, 下载次数: 593

ashrpt_2_0904_0928.html

51 KB, 下载次数: 567

2#
发表于 2013-9-5 16:36:36
Blocking Sid (Inst)        % Activity        Event Caused        % Event        User        Program        # Samples Active        XIDs
758, 1( 1)        2.00        log file sync        1.77        SYS        oracle@db1 (LGWR)        47/1,800 [ 3%]        0

回复 只看该作者 道具 举报

3#
发表于 2013-9-5 16:39:13
给出当时的AWR



svmon -G
svmon -U oracle
svmon -U grid

==>上面的输出放到 文本文件中

以及 cssd.log   

回复 只看该作者 道具 举报

4#
发表于 2013-9-5 20:38:29
Hi, Maclean ,附件为 awr , svmon ,ocssd 的打包文件 ,谢了

awr_svmon_cssd.zip

4.26 MB, 下载次数: 621

回复 只看该作者 道具 举报

5#
发表于 2013-9-5 21:01:43
呵,补充一句,这个系统开发商的应用SQL写得很差,目前正在教开发商调整优化SQL,已比1星期前,系统压力(CPU、IO)下降了30%

回复 只看该作者 道具 举报

6#
发表于 2013-9-5 21:02:58
还有,目前AIX的内存参数:

maxperm% = 90
minperm% = 3
maxclient% = 90
v_pinshm = 0

准备调整为如下,但暂未找到合适的停机窗口
vmo -p -o minperm%=3
vmo -p -o maxclient%=10
vmo -p -o maxperm%=10
vmo -p -o v_pinshm=1

回复 只看该作者 道具 举报

7#
发表于 2013-9-5 21:19:15
# svmon -U grid
===============================================================================
User                                 Inuse      Pin     Pgsp  Virtual
grid                               3761646    72864   488393  4186894




# svmon -U oracle
===============================================================================
User                                 Inuse      Pin     Pgsp  Virtual
oracle                             3676740    34354   600612  4178315



oracle  + grid   488393  +600612   ==> 4G paging space   

oracle 用户 用了 14g 物理内存

grid 用户用了  14g物理内存

total  1559354 =>  6g paging space

               size       inuse        free         pin     virtual   mmode
memory      8028160     6891297     1136863     1829333     7859429     Ded


物理内存共 8028160  30g物理内存




grid用户使用内存多了一些, 诊断一下 是什么进程用了这么多内存

回复 只看该作者 道具 举报

8#
发表于 2013-9-5 21:25:52
queries parallelized        2,535        0.71        0.03

Event        Waits        Time(s)        Avg wait (ms)        % DB time        Wait Class
DB CPU                 6,614                 43.99         
CSS initialization        220        1,613        7334        10.73        Other
row cache lock        75,502        1,020        14        6.78        Concurrency
direct path read        77,576        650        8        4.32        User I/O
cursor: pin S wait on X        325        528        1624        3.51        Concurrency



parallel 进程需要 CSS 注册



OS_CPU_WAIT_TIME        1,090,600         
RSRC_MGR_CPU_WAIT_TIME        0         
VM_IN_BYTES        1,073,647,616         
VM_OUT_BYTES        2,916,876,288         
PHYSICAL_MEMORY_BYTES        32,883,343,360       


可以从AWR里看到 paging



Avg message sent queue time (ms):         36.7
Avg message sent queue time on ksxp (ms):         1.2

GES也不是很乐观





建议你考虑使用 HUGE PAGE  ,并减少grid 用户占用的内存

回复 只看该作者 道具 举报

9#
发表于 2013-9-5 22:11:56
Maclean ,你好!
1、我也发现了系统有对一些SQL语句自动启用paralle 并行,从而象你说引发了‘parallel 进程需要 CSS 注册’  --> 导致‘CSS initialization event’  ;  问一下: 能否 和 应该不应该  限制 ORACLE 自动启用并行 ?

2、有哪些渠道方法 可以降低 grid 用户 所占用的内存?

回复 只看该作者 道具 举报

10#
发表于 2013-9-5 22:17:38
先找出那些 grid 占内存高的进程吧

svmon -Put 10      

回复 只看该作者 道具 举报

11#
发表于 2013-9-5 22:37:50
你看看 内容 够不够  ,谢谢!

db1_svmon_Put.txt

74.42 KB, 下载次数: 1949

回复 只看该作者 道具 举报

12#
发表于 2013-9-5 22:41:24
输出的全是oracle的进程, 你可以

ps -eo user,vsz,rss,args|grep grid| sort -u

看一下几个进程 然后 svmon -P $PID来看

回复 只看该作者 道具 举报

13#
发表于 2013-9-5 23:42:07
# ps -eo user,vsz,rss,args|grep grid| sort -u
ps: 0509-048 Flag -o was used with invalid list.
Usage: ps [-AMNZaedfklm] [-n namelist] [-F Format] [-o specifier[=header],...]
                [-p proclist][-G|-g grouplist] [-t termlist] [-U|-u userlist] [-c classlist] [ -T pid] [ -L pidlist ]
                [-@ [wparname] ]
Usage: ps [aceglnsuvwxX] [t tty] [processnumber]
#

呵,不好意思,连这个 也要求助你

回复 只看该作者 道具 举报

14#
发表于 2013-9-6 15:46:06
/usr/sysv/bin/ps  -eo user,vsz,rss,args|grep grid| sort -u

回复 只看该作者 道具 举报

15#
发表于 2013-9-6 16:59:23
Maclean,你好!
       今天9月6日上午8点22-25分左右,业务系统又出现了短暂的hang住。附件为当时半小时的awr、5分钟的ash。 从等待事件上看,好象跟9月4日的不太一样,个人感觉好象是CPU不够,CPU不够的其中一个原因会不会是parallel 并行导致。
      麻烦ML看看,再给点建议,隆重感谢。

回复 只看该作者 道具 举报

16#
发表于 2013-9-6 16:59:56
忘记粘附件了

awr_ash_2013.9.6.zip

168.76 KB, 下载次数: 2401

回复 只看该作者 道具 举报

17#
发表于 2013-9-10 15:39:28
按照ML的建议方向,做了调整后,暂时4天没有出现hang住现象了,再观察1星期看看

回复 只看该作者 道具 举报

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

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

GMT+8, 2024-5-19 11:59 , Processed in 0.056441 second(s), 23 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

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