结论:RAC存在故障,当前RAC运行为RAC1节点上,负载均衡没有起到作用。集成商提供的ASM的帐号密码不正确,RAC运行存在大量SGA/PGA的死锁,而且session存在严重等待。部分SQL语句需要进行优化。 配置问题 1、 RAC 的ASM权限不足 2、 RAC1支撑运行,RAC2状态正
结论:RAC存在故障,当前RAC运行为RAC1节点上,负载均衡没有起到作用。集成商提供的ASM的帐号密码不正确,RAC运行存在大量SGA/PGA的死锁,而且session存在严重等待。部分SQL语句需要进行优化。
配置问题
1、 RAC 的ASM权限不足
2、 RAC1支撑运行,RAC2状态正常,但RAC2无法进行负载。
3、 死锁严重,这是造成性能慢低下的表现原因。
4、 操作系统的IO和内存利用效果不好,需要重新优化SGA,PGA。磁盘性能低下。
5、 存在session等待。
6、 无效对象较多
7、 部分业务执行语句需要进行SQL调优。
8、 针对HD40的schema进行索引分析,增强性能。当前schema未进行索引分析
解决方案
1、 申请计划内停机时间进行数据备份、RAC故障调整。由于没有ASM权限,系统无法完成磁盘IO的不停机调整。
2、 重新实施RAC。
3、 共享存储优化。
4、 配置合理的SGA/PGA。解决session问题。
5、 配置schema的索引分析
6、 优化核心SQL业务代码
证据
物理读的SQL最慢的语句
declare vbdate date; begin delete from hdtmp_card_deptodep; delete from hdtmp_deptodep; delete from hdtmp_deptodepline; insert into hdtmp_deptodep select * from deptodep; insert into hdtmp_deptodepline select * fromdeptodepline; commit; insert intohdtmp_card_deptodep(V_NUM,STARTERCODE,STARTERNAME,RECDEPCODE,RECDEPNAME, FLINE, i_status,LASTMODIFYTIME,LASTMODIFYDATE,V_BOX_CODE,N_CARD_QTY) select A.V_NUM 领出单号,A.STARTERCODE发送单位代码,A.STARTERNAME 发送单位名称,A.RECDEPCODE 收货单位代码,A.RECDEPNAME 收货单位名称–,A.RECSTORECODE,A.RECSTORENAME ,FLINE 物流线路 ,decode(A.i_status,'ABORTED','已作废','AUDITED','已审核','UNAUDITED','未审核','未知') 单据状态 ,A.LASTMODIFYTIME 状态时间,trunc(A.LASTMODIFYTIME)领出日期 ,B.V_BOX_CODE 盒号,B.N_CARD_QTY盒内卡总数量 from hdtmp_deptodep A,hdtmp_deptodepline B,v_tserialstore c where a.I_RECEIVEFLAG = 'GET' and a.recstorecode is null and A.RECDE
INSERT INTOHDTMP_CARD_DEPTODEP(V_NUM,STARTERCODE,STARTERNAME,RECDEPCODE,RECDEPNAME, FLINE,I_STATUS,LASTMODIFYTIME,LASTMODIFYDATE,V_BOX_CODE,N_CARD_QTY) SELECT A.V_NUM 领出单号,A.STARTERCODE发送单位代码,A.STARTERNAME 发送单位名称,A.RECDEPCODE 收货单位代码,A.RECDEPNAME 收货单位名称 ,FLINE 物流线路 ,DECODE(A.I_STATUS,'ABORTED','已作废','AUDITED','已审核','UNAUDITED','未审核','未知') 单据状态,A.LASTMODIFYTIME 状态时间,TRUNC(A.LASTMODIFYTIME) 领出日期 ,B.V_BOX_CODE 盒号,B.N_CARD_QTY盒内卡总数量 FROM HDTMP_DEPTODEP A, HDTMP_DEPTODEPLINE B,V_TSERIALSTORE C WHEREA.I_RECEIVEFLAG = 'GET' AND A.RECSTORECODE IS NULL AND A.RECDEPCODE '1111' AND A.I_STATUS = 'AUDITED' AND A.UUID = B.V_DEPTODEP_NUM ANDA.RECDEPCODE = C.FSTORE ORDER BY C.FLINE,A.RECDEPCODE,B.V_BOX_CODE
行处理最慢的语句
其中:
BEGIN :Result :=”PWM_ALCJOB”.”GENBILL” (piJobId => :piJobId,piBin =>:piBin,piOperGid => :piOperGid,poErrMsg => :poErrMsg); END;
SELECT /*+rule*/ COUNT(*) ,COUNT(Mst.Num)Num from TALCDIFF mst, ModuleStat ms,TAlcJob aj, TStore ts, (selectdistinct FWrhCode, FWrhName From TWrhZone) wz where
mst.Stat = ms.No(+) andmst.fjobid = aj.fjobid(+) and mst.FStoreGid = ts.FGid(+) and mst.FWrh = wz.FWrhCode(+) and mst.NUM Like '999914%' and ts.FCodein (select FCLIENT FromTOWNERCLIENT_STORE whereFOwnerStoreCode '-' andFOwnerStoreCode like 'C01%') and mst.STAT = 0