千家信息网

log file sync事件

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,当用户(前台进程)对事务进行提交或回滚操作时,oracle需要将涉及该事务的所有redo条目信息全部写入到red logfile中。前台进程会通知lgwr将redo log buffer中的重做日志条
千家信息网最后更新 2026年11月03日log file sync事件

当用户(前台进程)对事务进行提交或回滚操作时,oracle需要将涉及该事务的所有redo条目信息全部写入到red logfile中。前台进程会通知lgwr将redo log buffer中的重做日志条目写出到redo logfile中。在11.2.0.3之前,lgwr会在写入完成后通知前台进程,用户进程会一直等待,直到获取到lgwr通知信息,保证所有的redo信息已全部安全的写入磁盘。在11.2.0.3及以后,默认情况下,lgwr写日志完成时不再主动的通知前台用户进程,由前台进程按时间间隔轮询查询日志的写入情况。前台进程在等待写入通知消息前,在数据库中可能会看到log file parallel write、log file sync等待事件。

由以上过程可知,Log file sync等待事件可能由以下原因引起:

1. Commit

2. Rollback

3. DDL操作

4. 数据字典更新(seq获取)

oracle的建议log file sync等待事件的平均等待时间要保持在20ms以内。通常,该等待事件的平均等待时间一般在5ms以下。10ms也不一定有问题,需要看整体的系统运行情况。

通常出现log file sync事件可从以下几个方面进行调整:

1. Redo log不要放在raid5上

2. 将小而短的事务进行合并,批量执行(减少commit)

3. 使用COMMIT NOWAIT选项(10.2提供,异步提交,可能导致日志丢失)

4. 使用NOLOGGING / UNRECOVERABLE选项

5. 保证log切换时间间隔在15-20分钟

log file sync的整个过程可以细分为以下几个阶段:

1) 用户提交

2) 通知LGWR写日志,LGWR唤醒

3) LGWR收集redo信息写I/O

4) LGWR写完成

5) LGWR通知前台进程

6) 前台进行收到通知,唤醒

第2步及第3步的写入时间可以参考awr中Instance Activity Stats-redo write time部分。第3步会伴随log file parallel write等待事件。系统负载较高时,第5步及第6步可能会产生延时。

整个过程可能使用下图(tanel poder大师的图)来表示:

有关log file sync讨论:
完全揭秘log file sync等待事件:http://www.itpub.net/thread-1777234-1-1.html


前台 进程 事件 日志 时间 信息 用户 事务 情况 过程 数据 条目 系统 保证 主动 安全 下图 原因 大师 字典 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 保险科技 互联网保险 新华互联网科技学院 北京互联网科技 银优互联网科技有限公司 善班互联网科技有限公司 互联网科技论坛 一五八零互联网科技 恒生科技互联网指数分析 央行互联网金融科技公司 互联网科技公司有风险吗 坤平互联网科技 健康食品互联网创新科技园项目 996高科技互联网公司 天津腾达互联网科技有限公司 互联网第三次科技革命特征 山东大美朱楼互联网科技有限公司 现代互联网科技公司 10位科技互联网大佬 黑龙江互联网科技公司 中国主要互联网科技公司 科技互联网政务服务 现代科技和互联网有关系吗 北京三清互联网科技 全球顶尖互联网科技公司 广州市恰铎互联网科技有限公司 华夏恒生科技与互联网科技 翼展科技 首家互联网医院 广州千川互联网科技有限公司 皮皮虾互联网科技有限公司 广州百诚互联网科技有限公司官网
0