一、等待事件
![](https://img.haomeiwen.com/i17007217/e355c143788e1f36.png)
![](https://img.haomeiwen.com/i17007217/400bcc340a2bd70c.png)
![](https://img.haomeiwen.com/i17007217/b86c383efaed7be8.png)
1、等待的定位方式:SQL级别(用10046查看)
![](https://img.haomeiwen.com/i17007217/f4e4e307f9431040.png)
2、等待的定位方式:会话级别(用v$session_wait)
![](https://img.haomeiwen.com/i17007217/412fe07fc1fd87e9.png)
3、等待的定位方式:系统级别(用AWR报告)
![](https://img.haomeiwen.com/i17007217/9758d77f4eceae4e.png)
二、等待分类:
![](https://img.haomeiwen.com/i17007217/3d8f421ff787cc34.png)
![](https://img.haomeiwen.com/i17007217/10a463683e48bf1b.png)
I/O等待事件:
1、如何查看等待事件
![](https://img.haomeiwen.com/i17007217/45644883f88f80c1.png)
![](https://img.haomeiwen.com/i17007217/2a5be56dd386b241.png)
2、常见等待事件:ilde wait events
![](https://img.haomeiwen.com/i17007217/e0fd537645d3ab2d.png)
![](https://img.haomeiwen.com/i17007217/41e8abb567813c34.png)
3、常见等待事件:CPU(CPU不属于等待事件)
![](https://img.haomeiwen.com/i17007217/07d410d71f5aabe5.png)
4、常见等待事件:db file scattered redo(数据文件离散读):
备注:指的是对数据大块的读取,一次读很多块,理解成一个表切成了很多块,一次把离散的很多块读进去。
![](https://img.haomeiwen.com/i17007217/270050d7a7d2b66e.png)
![](https://img.haomeiwen.com/i17007217/d41404ac5cd7997e.png)
![](https://img.haomeiwen.com/i17007217/6e8d305af3126329.png)
备注:会发现圆圈这里刚开始还是进行顺序读(根和枝),最后是批量离散读的方式(页)
![](https://img.haomeiwen.com/i17007217/61aedd1cf5dc1e6c.png)
5、常见等待事件:db file sequential redo(数据文件连续读):
备注:先在索引里找对应的rowid,然后一个块一个块的读取。
![](https://img.haomeiwen.com/i17007217/7a368d478c83a64b.png)
![](https://img.haomeiwen.com/i17007217/17821c27bea59228.png)
![](https://img.haomeiwen.com/i17007217/1a4a9f1a6d756d06.png)
6、常见等待事件:direct path redo(直接路径数据读):
![](https://img.haomeiwen.com/i17007217/e8f8c5435b23ed68.png)
![](https://img.haomeiwen.com/i17007217/163d04d48678ea14.png)
7、常见等待事件:direct path write(直接路径数据写):
![](https://img.haomeiwen.com/i17007217/87ecde52ac427712.png)
8、常见等待事件:log file sync(redo log 同步):
![](https://img.haomeiwen.com/i17007217/2b7654b34bb30b66.png)
![](https://img.haomeiwen.com/i17007217/6cc9ce6480c7cbe3.png)
内存等待事件:
1、常见等待事件:buffer busy waits(内存数据块繁忙等待):
![](https://img.haomeiwen.com/i17007217/0ab914f3f0060113.png)
![](https://img.haomeiwen.com/i17007217/0500d28d67223ab4.png)
2、常见等待事件:free buffer waits(申请空闲buffer等待):
![](https://img.haomeiwen.com/i17007217/a5a877de73cb4653.png)
![](https://img.haomeiwen.com/i17007217/8e8096e7c33de1c7.png)
等待事件相关视图:
这个视图是数据库启动到现在这个会话所有的等待事件,范围太大反而不如AWR报告好用。
![](https://img.haomeiwen.com/i17007217/38adbed8626eebb3.png)
总结:
对于实例级别我们可以用AWR报告去分析等待事件;
对于会话级别我们可以使用vsession_wait视图查看。
网友评论