oracle12c清除查询缓存,学习笔记:Oracle 12C数据库RAC的主要gc等待事件

本文详细介绍了Oracle 12C RAC数据库中的常见GC等待事件,包括GC当前块2-Way/3-Way、GC CR Block 2-Way/3-Way、GC CR Grant 2-Way、GC CR Block Busy和GC CR Block Congested等,通过实例分析了这些等待事件的原因和影响,并提供了优化建议。
摘要由CSDN通过智能技术生成

天萃荷净

ORACLE 12C RAC中有很多GC等待事件,这里重点介绍一些常见的GC等待事件,以便在以后遇到类似问题方便分析

1.Oracle RAC等待事件

在本节中我将讨论重要的RAC等待事件。这还不是全部等待事件的完整列表,只是一个最常见的等待事件的列表。

2.GC当前块2-Way/3-Way

当前块的等待事件意味着被传输的块的版本是块的最新版本。这个等待事件读取和写入活动中都可能遇到。如果该块被访问是以读取活动进行,那么该资源上锁以KJUSERPR(PR)模式获得。刚才我在“资源和锁定”一节中所讨论的示例展示了KJUSERPR模式的锁。

在下面的例子中,我从表t_one中查询一行,造成连接到节点2的磁盘读。查看SQL跟踪文件,没有全局缓存等待事件。原因是该块被本地掌控(本地实例是master),所以FG进程中可直接获取该资源上锁,而不会产生任何全局缓存等待。这种类型的锁也被称为亲和力锁定(相似度锁定)方案。动态掌握资源(DRM,Dynamic Resource Mastering)的部分将详细讨论相似度锁定(亲和力锁定)。

RS@ORCL2:2> @tc_one_row.sql

N1 FNO BLOCK OBJ V1

———- ———- ———- ———- ———-

100 4 180 75742 250

Trace file:

nam=’db file sequential read’ ela= 563 file#=4 block#=180 blocks=1 obj#=75742

我连接到实例1(注释5)查询同一行数据。由于该块已经缓存在实例2,因此该块从实例2传输到实例1。跟踪显示,等待事件gc current block 2-way由于file_id=4,BLOCK_ID=180块而被遇到了。这个块传输是一个两路的块传输,因为该资源的拥有实例和资源主实例(实例2)是相同的。

SYS@ORCL1:1> @tc_one_row.sql

N1 FNO BLOCK OBJ V1

———- ———- ———- ———- ———-

100 4 180 75742 250

Trace file:

nam=’gc current block 2-way’ ela= 629 p1=4 p2=180 p3=1 obj#=75742 tim=13

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值