昨天运维组的同时反映有套系统用户反映很慢,需要协助帮忙检查什么原因引起的性能问题。导出了从8点到11点的AWR报告进行分析,发现等待事件里大部分的指标都正常,就是buffer busy wait的平均等待有点高,大概在20毫秒左右。初步判断可能是该系统有某些热点表大部分功能都用到,导致频繁的读、改、写操作,由于同一个数据块被大量的进程同时尝试访问写入,最终引起了buffer busy wait事件。

继续向下分析AWR报告中对于引起buffer busy wait事件的相关对象列表,发现某个用户登录日志表做出了百分之80以上的贡献。看起来,此表的索引或数据的保存方式存在需要优化的空间。查看该表的结构,发现该表建立有两个单键索引。通过SELECT COUNT(1)方式观察该表的数据变化情况,发现该表的数据量并不大,但是变化很频繁。由于该表属于日志记录表,不会涉及到”范围统计“类的相关操作,因此,为了降低热点数据块的争用,应该打散数据分布。

处理方式:1、删除原有的索引,重新在相关列上建立反向索引(REVERSE)。

2、对数据表进行分析操作。例如:                               exec dbms_stats.gather_table_stats(ownname => 'scott',tabname => 'work_list',estimate_percent => 10,method_opt=> 'for all indexed columns') ;

buffer busy wait在RAC环境下出现的更多相关文章

  1. RAC环境下的堵塞(blocking blocked)

    RAC环境下的堵塞不同于单实例情形,由于我们须要考虑到位于不同实例的session.也就是说之前查询的v$session,v$lock对应的应变化为全局范围来查找.本文提供了2个查询脚本,并给出实例演 ...

  2. 利用XAG在RAC环境下实现GoldenGate自动Failover

    概述 在RAC环境下配置OGG,要想实现RAC节点故障时,OGG能自动的failover到正常节点,要保证两点: 1. OGG的checkpoint,trail,BR文件放置在共享的集群文件系统上,R ...

  3. Oracle 11g RAC环境下Private IP修改方法及异常处理

    Oracle 11g RAC环境下Private IP修改方法及异常处理 Oracle 11g RAC环境下Private IP修改方法及异常处理 一. 修改方法 1. 确认所有节点CRS服务以启动 ...

  4. 【转】Oracle RAC 环境下的连接管理

    文章转自:http://www.oracle.com/technetwork/cn/articles/database-performance/oracle-rac-connection-mgmt-1 ...

  5. RAC 环境下的重要参数

    Oracle 数据库启动时会根据参数文件中提供的相关参数启动Oracle实例.这些参数包括数据库名字.sga,pga的分配,控制文件的位置,undo,process等等.Oracle RAC数据库同样 ...

  6. RAC 环境下参数文件(spfile)管理

    RAC环境下,初始化参数文件与但实例下参数文件有些异同,主要表现在初始化参数可以为多个实例公用,也可以单独设置各个实例的初始化参数.对于那些非共用的初始化参数则必须要单独设置,而共用的则可以单独设置, ...

  7. RAC 环境下修改归档模式

    RAC环境下的归档模式切换与单实例稍有不同,主要是共享存储所产生的差异.在这种情况下,我们可以将RAC数据库切换到非集群状态下,仅仅在一个实例上来实施归档模式切换即可完成RAC数据库的归档模式转换问题 ...

  8. Oracle-11g-R2 RAC 环境下 GPnP Profile 文件

    GPnP Profile 文件的作用: GPnP Profile 文件是一个保存于 $GRID_HOME/gpnp/<hostname>/profiles/peer 目录下的小型 XML ...

  9. Oracle RAC环境下如何更新patch(Rolling Patch)

    Oracle RAC数据库环境与单实例数据库环境有很多共性,也有很多异性.对于数据库补丁的更新同样如此,都可以通过opatch来完成.但RAC环境的补丁更新有几种不同的更新方式,甚至于可以在零停机的情 ...

随机推荐

  1. 获取Spring-boot系统环境变量方法

    public static ConfigurableApplicationContext context = null; public static void main( String[] args ...

  2. linux下 yum源、rpm、源代码安装mysql

    mysql的安装 一.yum源格式安装mysql 1.将下载的yum包上传到linux上: [root@localhost ~]# ls mysql-community-release-el6-5.n ...

  3. linux编辑器 vi的使用

    vi 编辑器的三个模式: 命令模式 开始就是命令模式 insert模式 i, I, a, A, o,O ,s, S 命令行模式 : i  在当前位置进入Insert模式 I  在行的头部进入Inser ...

  4. poj 3352 边连通分量

    思路与poj3177一模一样. #include<iostream> #include<cstdio> #include<cstring> #include< ...

  5. 查锁表及kill

    当一个表一直被锁住而无法进行操作的时候,可以用如下方法 select l.session_id sid, s.serial#, l.locked_mode 锁模式, l.oracle_username ...

  6. Commons CLI - Usage

    Usage Scenarios The following sections describe some example scenarios on how to use CLI in applicat ...

  7. MyBatis(3.2.3) - Handling enumeration types

    MyBatis supports persisting enum type properties out of the box. Assume that the STUDENTS table has ...

  8. css尖角

    .market-nav-arrow { ; ; ; border-style: solid; border-width: 7px 0px 7px 7px; border-color: transpar ...

  9. CSS之perspective

    <!DOCTYPE html> <html> <head> <style> #div1 { position: relative; height: 15 ...

  10. sqlserver2008 如何定时清理索引碎片

    sqlserver2008 如何定时清理索引碎片 查询索引引起的表垃圾碎片sql脚本:  SELECT object_name(a.object_id) [TableName] ,a.index_id ...