加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Oracle Commit

发布时间:2020-12-12 14:49:11 所属栏目:百科 来源:网络整理
导读:http://m.blog.itpub.net/29523859/viewspace-1331176/ http://www.linuxidc.com/Linux/2013-03/80467.htm http://blog.itpub.net/26651/viewspace-1040530/ commit工作过程 commit提交之前 Oracle在SGA撤销段缓冲区中生成撤销记录,撤销记录包含更新和删除

http://m.blog.itpub.net/29523859/viewspace-1331176/

http://www.linuxidc.com/Linux/2013-03/80467.htm
http://blog.itpub.net/26651/viewspace-1040530/


commit工作过程
  • commit提交之前
Oracle在SGA撤销段缓冲区中生成撤销记录,撤销记录包含更新和删除表行的旧值
Oracle在SGA重做日志缓冲区生成重做日志记录
Oracle修改SGA数据库中的缓冲区
  • commit提交时
重做记录中的事务被标记上为所提交事务的唯一scn 日志写入程序将事务重做日志信息和事务scn,从重做日志缓冲区写到磁盘上的重做日志文件 释放Oracle持有的锁,标记事务为完成 commit参数 commit_wait初始化参数 commit_wait={nowait|wait|force_wait} Oracle默认是commit方式是wait 作用:控制重做日志写入方式 备注:nowait适用场景(a,有大量的事务redo,信息需要写入redo log;b,容忍部分数据丢失;c,等待LGWR写对运用程序来说不可以忍受)。 force_wait:将会适用oracle默认方式提交 commit_logging 初始化参数 commit_logging={immediat|batch} immediat:LGWR将redo信息立即写入到重做日志文件 batch:redo信息会被buffer,即redo不立即写入到重做日志文件 commit用法 commit commit write wait; commit write nowait commit write batch; commit write immediate; wait、nowait控制什么时候将redo信息写入到redo logs immediat 、batch控制redo信息以怎样的方式写入到redo logs 备注:pl/sql默认方式batch nowait

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读