BUFFER CACHE之主要的等待事件
原因:资源紧张,等待其释放。
原因的原因:1. lgwr和DBWn进程写太慢;2. Buffer和latch不可用
原因的原因的原因:全表扫描、library cache latches数太多等。
视图:V$SYSTEM_EVENT (instance-level waits), V$SESSION_EVENT (session-level waits)
注意: 等待与共享池和缓冲池中的高命中率(high hit ratios)无关!换句话说,高命中率也会有长时间的等待。
* Buffer Busy Waits
This wait indicates that there are some buffers in the buffer cache that multiple
processes are attempting to access concurrently. To determine the wait statistics for
each class of buffer, query the v$waitstat view. Common buffer classes that have
buffer busy waits include:
缓冲池中的buffer块被多个进程并发访问,用v$waitstat视图查看各类buffer的等待统计数据。
- Data Block
If the contention is on tables or indexes (not the segment header):
Check for SQL statements using unselective indexes.
Check for right-hand-indexes (that is, indexes that are inserted at the same
point by many processes; for example, those which use sequence number
generators for the key values).
Consider using automatic segment-space management or increasing free lists to
avoid multiple processes attempting to insert into the same block.
- Data Block (continued)
The v$session_wait view will provide the file and block numbers (in the
P* columns) for those blocks that have the most frequent block waits. These
blocks can then be mapped to which object they belong.
- Undo Header
Displays contention on rollback segment header: If you are not using automatic
undo management, then add more rollback segments.
- Undo Block
Displays contention on rollback segment block: If you are not using automatic
undo management, consider making rollback segment sizes larger.
* Free Buffer Inspected
This is a measure of how many buffers on the LRU list are inspected by a process
looking for a free buffer (writing a new block) before triggering DBWn to flush the
dirty buffers to disk.
* Free Buffer Waits
This wait event indicates that a server process was unable to find a free buffer and
has requested the database writer to make free buffers by writing out dirty buffers. A
dirty buffer is a buffer whose contents have been modified. Dirty buffers are freed
for reuse when DBWn has written the blocks to disk.
To resolve the contention, DBWn has to make buffers available faster for
overwriting. To achieve this, examine ways of speeding up the write process. This
event is also an indication that the buffer cache is too small. Examine the hit ratios
for the buffer cache to determine if the cache should be resized.
If this event occurs frequently, examine the session waits for DBWn to determine
whether there is anything delaying DBWn.
Causes
DBWn may not be keeping up with writing dirty buffers in the following situations:
- The I/O system is slow.
Solution: Check that the files are equally distributed across all devices. If that
produces no effect get faster disks or place offending files onto faster disks.
- The I/O is waiting for resources, such as latches.
Solution: Check that the files are equally distributed across all devices. If that
produces no effect get faster disks or place offending files onto faster disks.
- The buffer cache is so small that DBWn spends most of its time cleaning out
buffers for server processes.
Solution: Increase the buffer cache size.
- The buffer cache is so large that one DBWn process cannot free enough buffers
in the cache to satisfy requests.
Solution: Decrease the buffer cache size or initialize more database writer
processes.
BUFFER CACHE之主要的等待事件的更多相关文章
- DBA_Oracle Event等待事件分析(概念)
2014-12-18 Created By BaoXinjian
- ORACLE等待事件:read by other session
read by other session简介 官方关于read by other session的介绍如下: When information is requested from the datab ...
- Buffer Cache
Buffer Cache Buffer Cache是SGA区中专门用于存放从数据文件中读取的的数据块拷贝的区域.Oracle进程如果发现需要访问的数据块已经在buffer cache中,就直接读写内存 ...
- Oracle常见的几种等待事件
1. CPU time CPU time其实不是真正的等待事件.是衡量CPU是否瓶颈的一个重要指标.一般来讲,一个良好的系统,CPU TIME 应该排在TOP 5 TIME Event的最前面. 当然 ...
- Buffer Cache 原理
在将数据块读入到SGA中,他们的缓冲区被放置在悬挂散列存储桶的链表中(散列链),这种内存结构由大量 子cache buffers chains锁存器(也称为散列锁存器或CBC锁存器)保护. Buffe ...
- Latch free等待事件
Latch free等待事件的三个参数:p1-latch的地址:p2-latch编号:p3-请求次数.从oracle10g起,latchfree不再包含所有的latch等待,有些latch等待可能表现 ...
- Oracle buffer cache与相关的latch等待事件
buffer cache与相关的latch等待事件 1.buffer cache 2.latch:cache buffers lru chain 3.latch:cache buffers chain ...
- 模拟产生CBC LATCH与buffer busy wait等待事件
数据库版本:11.2.0.4.0 1.查出表TEST相关信息 select rowid, dbms_rowid.rowid_row_number(rowid) rowid_rownum, dbms_r ...
- RAC性能分析 - gc buffer busy acquire 等待事件
概述---------------------gc buffer busy是RAC数据库中常见的等待事件,11g开始gc buffer busy分为gc buffer busy acquire和gc ...
随机推荐
- ASP.NET MVC 中CSS JS压缩合并 功能的使用方法
通过压缩合并js文件和css文件,可以减少 服务器的响应 次数和 流量,可以大大减小服务器的压力,对网站优化有比较明显的帮助!压缩合并 css 文件和js文件是网站优化的一个 比较常用的方法. ASP ...
- uva 11489
简单博弈 #include <cstdio> #include <cstdlib> #include <cmath> #include <map> #i ...
- linq中查询列表的使用及iqueryable和list集合之间的转换
linq中查询列表的使用及iqueryable和list集合之间的转换 比如要查询一个货架集合,但是只需要其id和name即可,可以用以下方法:先写一个model类:CatalogModel(注意该类 ...
- UVA 11174 Stand in a Line (组合+除法的求模)
题意:村子里有n个人,给出父亲和儿子的关系,有多少种方式可以把他们排成一列,使得没人会排在他父亲的前面 思路:设f[i]表示以i为根的子树有f[i]种排法,节点i的各个子树的根节点,即它的儿子为c1, ...
- POJ 3277 City Horizon(叶子节点为[a,a+1)的线段树+离散化)
网上还有用unique函数和lowerbound函数离散的方法,可以百度搜下题解就有. 这里给出介绍unique函数的链接:http://www.cnblogs.com/zhangshu/archiv ...
- hdu 1517 A Multiplication Game 博弈论
思路:求必胜区间和必败区间! 1-9 先手胜 10-2*9后手胜 19-2*9*9先手胜 163-2*2*9*9后手胜 …… 易知右区间按9,2交替出现的,所以每次除以18,直到小于18时就可以直接判 ...
- Oracle 6 - 锁和闩 - 锁类型
Oracle锁大类 1.DML锁 (SELECT, INSERT, UPDATE, DELETE, MERGE是对数据库加的锁, 可能是行锁,也可能是表锁) 2.DDL锁 (Create, Alter ...
- Error: The VPN client agent was unable to create the interprocess communication depot.
当安装Cisco AnyConnect VPN Client出现The VPN client agent was unable to create the interprocess communica ...
- python logging 学习笔记
logging.basicConfig函数各参数: filename: 指定日志文件名 filemode: 和file函数意义相同,指定日志文件的打开模式,'w'或'a' format: 指定输出的格 ...
- [Unity菜鸟] 射线
1. 射线用 Physics.Raycast 都可以判断,用 collider.Raycast 只在某些(不明)情况下可以 void Update() { Ray ray = Camera.main. ...