博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
重做日志写进程(LGWR)
阅读量:6406 次
发布时间:2019-06-23

本文共 655 字,大约阅读时间需要 2 分钟。

hot3.png

重做日志进程(LGWR)

重做日志写进程(LOG Writer)负责将中的数据顺序地写入重做日志文件中。

快速提交

Oracle使用快速提交(fast commit)技术进行事务提交操作。Oracle引入了系统变化术(system change number,SCN)来支持此技术。只要有一个事务被提交,Oracle服务器就会产生一个SCN,并将其赋予该事务操作的所有的数据行。在同一个数据库中,SCN是单调递增,并且唯一的。Oracle服务器将SCN作为Oracle内部的数据戳,来保证数据的同步和数据的读一致。

当提交commit语句后,Oracle内部操作如下:

(1)服务器进程把提交的记录,和SCN一起写入重做日志缓冲区中。

(2)LGWR将所提交的记录连续地写入重做日志文件中。

(3)Oracle通知用户commit已经完成。

(4)Oracle服务器进程将对数据所做的修改和回滚所需的值都写入数据库高速缓冲区,将数据库高速缓冲区中的这些数据库标示为脏数据区,释放资源,打开锁。

重做日志写进程在遇到以下情况时,将重做日志缓冲区中的数据连续的写入重做日志文件中:

(1)当有事务提交时。

(2)当重做日志缓冲区中变化的数据大小超过1MB时。

(3)当重做日志缓冲区中所存放的记录超过重做日志缓冲区中容量的1/3时。

(4)在DBWR将数据库高速缓冲区中修改过的数据块写入数据文件之前。

(5)每隔3秒。

转载于:https://my.oschina.net/pkpk1234/blog/57530

你可能感兴趣的文章
golang笔记——数组与切片
查看>>
屏蔽可忽略的js脚本错误
查看>>
散文分享
查看>>
【Vue】vue.js常用指令
查看>>
NFS学习
查看>>
MySql常用命令总结
查看>>
又一年...
查看>>
文件上传框的美化+预览+ajax
查看>>
Linux VFS
查看>>
ext不能选中复制属性_如何实现Extjs的grid单元格只让选择(即可以复制单元格内容)但是不让修改?...
查看>>
python中print的作用*8、不能+8_在 Python 3.x 中语句 print(*[1,2,3]) 不能正确执行。 (1.0分)_学小易找答案...
查看>>
python 生成html代码_使用Python Markdown 生成 html
查看>>
axure如何导出原件_Axure 教程:轻松导出图标字体所有图标
查看>>
laravel input值必须不等于0_框架不提供,动手造一个:Laravel表单验证自定义用法...
查看>>
cad填充图案乱理石_太快了吧!原来大神是这样用CAD图案填充的
查看>>
activator.createinstance 需要垃圾回收么_在垃圾回收器中有哪几种判断是否需要被回收的方法...
查看>>
rocketmq 消息指定_RocketMQ入坑系列(一)角色介绍及基本使用
查看>>
redis zset转set 反序列化失败_掌握好Redis的数据类型,面试心里有底了
查看>>
p图软件pⅰc_娱乐圈最塑料的夫妻,P图永远只P自己,太精彩了吧!
查看>>
jenkins 手动执行_Jenkins 入门
查看>>