日期:2014-05-16  浏览次数:20547 次

修改隐含参数_library_cache_advice解决性能问题一例

客户的一套重要生产系统,出现了性能问题。这个问题涉及的信息如下:

数据库主机的CPU利用率长期在100%左右。

应用系统在晚上进行调整后,开始出现了问题。

数据库中出现大量的latch: shared pool、latch: library cache、cursor: pin S、latch: cache buffers chains和latch: cache buffers lru chain等各种等待。

由于系统较大,整个系统实际上被分成了2个部分,每个部分服务不同的用户。二者的应用基本相同,分别对应2套数据库,二者也同样在出问题之前进行了调整,而数据库的主机配置及参数也是相同的,同时均为10.2.0.5双节点RAC数据库。但是只有其中1套库有性能问题。

2套库的配置虽然没有差别,但是负载方式却有很大的区别,正常的那套库,2个节点的负载基本上是均衡的,而现在有性能问题的这套库,所有的负载基本上全部在第1个节点上(虽然已经多次要求开发商整改,不幸的是…这里不用说了)。

下面是AWR报告中的数据:

性能正常时间段的数据(采集时间2小时):

view plaincopy to clipboardprint?
  1. ??????????????Snap?Id??????Snap?Time??????Sessions?Curs/Sess??
  2. ????????????---------?-------------------?--------?---------??
  3. Begin?Snap:??????3408?19-Sep-11?09:00:21?????4,690??????39.5??
  4. ??End?Snap:??????3412?19-Sep-11?11:00:07?????4,950??????38.7??
  5. ???Elapsed:??????????????119.76?(mins)??
  6. ???DB?Time:????????????2,900.95?(mins)??
  7. ??
  8. Cache?Sizes??