commit后数据库干的工作
用户提交commit后,数据库干的工作有:
1,oracle为用户的transaction生成一个SCN号。
2,LGWR把redo buffer中的数据写入到redo log file,同时把SCN号记录到redo log file中。这一步完成后,说明用户提 交的数据已经安全的写到磁盘
3,释放用户session占用的locks,这些locks可以在V$LOCK中查到。释放用户的lock后,那么其他在等待lock的session 就会被唤醒,继续它们的工作
4,如果在commit后,用户transaction修改的一些blocks依然在buffer cache中,这些blocks会被快速的visited,并被 cleaned out。block cleanout是指清除存储在block header中的和lock想关的信息。这一步不会产生redo信息。
从上面看,用户commit,只是把redo log buffer中的数据写入到redo log中,实际上并没有把真正的用户提交的数据(data buffer cache中的脏数据)写入到磁盘。DBWn分散的把脏数据组成“一团”,交给OS,让OS去写,而自己去收集下一个“团”。
commit后数据库干的工作的更多相关文章
- SQL Server数据库快照的工作方式
		SQL Server数据库快照的工作方式 翻译自:How Database Snapshots Work 最近有一个帖子<errorlog中的异常信息rolled forward 和rolled ... 
- MySQL/MariaDB数据库的索引工作原理和优化
		MySQL/MariaDB数据库的索引工作原理和优化 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 实际工作中索引这个技术是影响服务器性能一个非常重要的指标,因此我们得花时间去了 ... 
- Oracle误删表空间文件后数据库无法启动
		[问题描述]Oracle误删表空间文件后数据库无法启动,报错表空间文件不存在 [解决办法]sqlplus / as sysdba #以dba身份登陆数据库shutdown immediat ... 
- 解决sqlite 删除记录后数据库文件大小不变
		最的做的项目中要有到sqlite数据存储,写了测试程序进行测试,存入300万条记录,占用flash大小为 86.1M,当把表中的记录全部删除后发后数据库文件大小依然是 86.1M: 原因是:sqlit ... 
- OpenERP 源码变更后数据库升级
		转自:http://vivianyw.blog.163.com/blog/static/13454742220142114422130/?latestBlog OpenERP代码升级后需要对数据进行升 ... 
- git不能先commit后再pull
		本文首发hilsion的博客 今天遇到一个在使用git上的一个误区.具体的问题现象是: 我commit后再pull而不能在本地合并的情况,结果导致我的commit直接把同事的修改覆盖了.因为相对于我此 ... 
- git commit 后 尚未push到远程,撤销commit
		执行commit后,还没执行push时,想要撤销这次的commit,该怎么办? 解决方案: 使用命令: git reset --soft HEAD^ 这样就成功撤销了commit,如果想要连着add也 ... 
- 输入url后浏览器干了些什么(详解)
		输入url后浏览器干了些什么(详解) DNS(Domain Name System, 域名系统) 解析 DNS解析的过程就是寻找哪台机器上有你真正需要的资源过程.但你在浏览器张红输入一个地址时,例如: ... 
- 『叶问』#41,三节点的MGR集群,有两个节点宕机后还能正常工作吗
		『叶问』#41,三节点的MGR集群,有两个节点宕机后还能正常工作吗 每周学点MGR知识. 1. 三节点的MGR集群,有两个节点宕机后还能正常工作吗 要看具体是哪种情况. 如果两个节点是正常关闭的话,则 ... 
随机推荐
- WCF入门教程系列六
			一.前言 前面的几个章节介绍了很多理论基础,如:什么是WCF.WCF中的A.B.C.WCF的传输模式.本文从零开始和大家一起写一个小的WCF应用程序Demo. 大多框架的学习都是从增.删.改.查开始来 ... 
- css实现超连接按钮形式显示
			<html> <head> <meta http-equiv="Content-Type" content="text/html; char ... 
- uva11292贪心基础题目
			C - 贪心 基础 Crawling in process... Crawling failed Time Limit:1000MS Memory Limit:65536KB 64bi ... 
- mongodb内嵌文档的查询
			本文转自:http://blog.163.com/wm_at163/blog/static/1321734902012526103825481/ 1 > db.blog.findOne() { ... 
- talos项目记录
			1. 跑schedule : php src/cli-schedule/cli.php -a sales.coupon.offer-coupons 所用方法在schedule里 
- Matrix Power Series(POJ 3233 构造新矩阵求解+ 快速矩阵幂)
			题目大意:给定A,k,m(取模),求解S = A + A2 + A3 + … + Ak. 思路:此题为求解幂的和,一开始直接一个个乘,TLE.时间消耗在累加上.此处巧妙构造新矩阵 p= A 0 ... 
- php跨服务器传递对象
			最近因为研究跨域名,跨服务器的问题,所以无聊,就想到了一个跨服务器传递对象的问题. 想要跨服务器传递数据,那么就要使用到get或者post提交. 我这里的方法有点复杂,但是因为平时工作时,有封装相应的 ... 
- 《Programming WPF》翻译 第7章 2.图形
			原文:<Programming WPF>翻译 第7章 2.图形 图形时绘图的基础,代表用户界面树的元素.WPF支持多种不同的形状,并为它们每一个都提供了元素类型. 7.2.1基本图形类 在 ... 
- JSP页面中文参数传递get和post方法分析
			原文 http://developer.51cto.com/art/200907/133499.htm 在项目中,我们经常遇到需要在JSP页面切换中传递中文字符.这主要有两种方式. ◆URL方式 例如 ... 
- 深入浅出Node.js (6) - 理解Buffer
			6.1 Buffer结构 6.1.1 模块结构 6.1.2 Buffer对象 6.1.3 Buffer内存分配 6.2 Buffer的转换 6.2.1 字符串转Buffer 6.2.2 Buffer转 ... 
