adg备库CPU负荷高

2019年10月21日 1283点热度 0人点赞 0条评论

近期adg备库负荷高,经常高达99%甚至100%,所在主机还同时运行了两个informix实例,经过分析主机监控信息,发现informix占用了更多的CPU,但由于无法检查、控制informix,决定先从oracle方面尽量优化处理。
针对adg备库的使用,主要是来自一个报表库A的dblink查询,该报表库A建立在另外的城市,网络带宽受限,一些大量的报表查询会非常缓慢,一些任务甚至挤压了很多天无法执行完毕,而这些查询也进一步增加了主机CPU负荷。
注意,此时没有停掉异地的报表库,又在本地建立了报表库B,同样通过dblink进行大量的报表查询,所有的任务没有积压,执行很快。
报表库A采用导入的方式建库,一些报表任务一直在执行,大约从10月5日积压到今天21日,所以最久的会话已经执行了16天没有执行完毕,类似的来自报表库A的sql查询共计43条,如下所示。

select 'kill -9 '||p.spid from gv$session s,gv$process p where s.PADDR = p.ADDR and s.program like '%bd%';
--------------------------------
kill -9 60490580
kill -9 13172818
kill -9 3606292
kill -9 55509530
kill -9 4456748
kill -9 32965404
kill -9 54853718
kill -9 3998586
kill -9 4785596
kill -9 53477546
kill -9 65274060
kill -9 13042306
kill -9 35455334
kill -9 918542
kill -9 13501180
kill -9 38601624
kill -9 50004250
kill -9 46465076
kill -9 59769410
kill -9 47711008
kill -9 63504962
kill -9 44565178
kill -9 8192638
kill -9 60555614
kill -9 25625254
kill -9 12124484
kill -9 37290684
kill -9 40960376
kill -9 6555460
kill -9 44630266
kill -9 36962532
kill -9 2425478
kill -9 45548320
kill -9 46007290
kill -9 54068116
kill -9 5702524
kill -9 56690326
kill -9 40763578
kill -9 49676304
kill -9 9110752
kill -9 40437332
kill -9 63833784
kill -9 33816640

43 rows selected.

采用alter sytem kill session的方式无法杀死这些会话?所以采用最粗暴的方式,直接杀server进程,杀掉后主机CPU负荷逐渐降到90%以下。

liking

这个人很懒,什么都没留下

文章评论