Oracle Log File Sync 等待事件分析与优化
需积分: 42 63 浏览量
更新于2024-09-12
收藏 468KB DOC 举报
LOG FILE SYNC概述
LOG FILE SYNC是Oracle中最普遍的等待事件之一,通常log file sync的等待时间都非常短,仅为1-5ms,不会有什么问题。但是一旦出问题,往往都比较难解决。那么,什么时候会产生log file sync等待?
log file sync等待可能出现在以下几种情况:
1. commit操作:在提交事务时,需要将日志写入磁盘,导致log file sync等待。
2. rollback操作:在回滚事务时,也需要将日志写入磁盘,导致log file sync等待。
3. DDL操作:在执行DDL语句时,需要将日志写入磁盘,导致log file sync等待。
4. DDL操作导致的数据字典修改所产生的commit:在执行DDL语句时,可能会导致数据字典的修改,进而导致log file sync等待。
5. 某些能递归修改数据字典的操作:例如查询SEQ的next值,可能会导致数据字典的修改,进而导致log file sync等待。
在一个正常的系统中,大多数的log file sync等待都是由commit操作造成的。但是在某些异常的系统中,例如频繁rollback、SEQ的cache设置为nocache的系统,也可能会造成比较多的log file sync等待。
Understanding LOG FILE SYNC
从上面的分析可以看出,log file sync等待是Oracle中最普遍的等待事件之一。那么,什么是log file sync?log file sync是指在提交事务时,将日志写入磁盘的过程。在这个过程中,系统需要等待日志写入磁盘的完成,这个等待时间就称为log file sync等待。
log file sync等待可以分为六个阶段:
1. 用户进程发起commit:用户进程提交事务,开始log file sync等待。
2. 用户进程通知lgwr写日志:用户进程通知lgwr进程将日志写入磁盘。
3. lgwr接收到请求开始写:lgwr进程接收到写日志的请求,开始写日志。
4. lgwr写完成:lgwr进程完成日志的写入。
5. lgwr通知用户进程写完成:lgwr进程通知用户进程日志写入完成。
6. 用户进程获得通知,继续做其他事情:用户进程获得日志写入完成的通知,继续执行其他任务。
在这个过程中,1、2阶段的时间主要是post/wait的时间,典型的这种post/wait一般利用的是操作系统的信号量(IPC)实现。如果系统CPU资源充足,一般不会出现大的延迟。前台进程post lgwr后,就开始等待log filesync。
2、3阶段的时间,主要是lgwr为了获取cpu资源,等待cpu调度的时间。
点击了解资源详情
点击了解资源详情
118 浏览量
313 浏览量
463 浏览量
696 浏览量
点击了解资源详情
点击了解资源详情
点击了解资源详情
![](https://profile-avatar.csdnimg.cn/default.jpg!1)
parick
- 粉丝: 1
最新资源
- 使用Struts+Hibernate构建Web工程从零开始教程
- SQL基础操作与数据定义详解
- Win32 NetBIOS编程接口详解
- 数据库系统基础:习题解析与重点概念
- GNU Make中文手册:详解与指南
- Boost Graph Library用户指南与参考手册
- MAX471/MAX472高侧电流感知放大器在便携式PC和电话中的应用
- 51单片机AT89C51:入门与功能详解
- XML实用大全:探索XML在信息技术领域的应用
- 操作系统实验:处理机调度模拟
- B/S模式下的生产信息管理系统设计与实现
- TWIKI安装与配置指南
- OpenSceneGraph基础教程:3D场景图形解析
- 机器学习驱动的自动文本分类技术
- 数理逻辑入门:命题逻辑详解
- 理解OWL:构建语义网格的关键语言