Oracle 的安全保障 commit &checkpoint
Oracle 的安全 commit &checkpoint
- commit ---lgwr
- 事务相关的操作,保证事务的安全。
- commit标志着事务的结束.意味着别人对你事务操作的结果可见.
- commit后数据可能在内存里,也可能在磁盘里,
- commit后没有机会回滚了,除非恢复数据.
- 标识着用户的决定,数据的生效.
- commit后,这条记录产生的redo重做日志是放在log buffer内存里面的,oracle会让log buffer将redo重做日志写到磁盘上,commit才会返回提交完成.
- 数据修改完是由redo保护.
- redo是顺序的在redo文件上写的,非常快.而数据块写到磁盘中,需要先去磁盘找数据文件所在位置,很慢.
- 数据的回滚
SQL> rollback;
回滚的过程就是从回滚段里拿到刚刚执行的这条语句产生的回滚,然后应用到以前的数据块上.
回滚的前提是没有commit.一旦提交了,就不能回滚了.
如果网络中断,会话中断,oracle会强制回滚
- checkpoint -- dbwr
- 数据相关的操作,保证数据的安全。
- 把修改了的数据写在磁盘上(包括修改完,提交、修改完,未提交)
- 执行这条语句后,就会将所有的脏数据写入磁盘.
- 脏数据越来越多,会占用位置,checkpoint是为了保证空间
- 减少恢复时间.
SQL> alter system checkpoint;
System altered.
Oracle 的安全保障 commit &checkpoint的更多相关文章
- 关于Oracle GoldenGate中Extract的checkpoint的理解 转载
什么是checkpoint? 在Oracle 数据库中checkpoint的意思是将内存中的脏数据强制写入到磁盘的事件,其作用是保持内存中的数据与磁盘上的数据一致.SCN是用来描述该事件发生的准确的时 ...
- Oracle什么时候需要Commit
写完DML语句(update, insert, delete)后,需要手动COMMIT,如果没有COMMIT,更新的内容会被保存到内存中,而不是提交到数据库中,将不会被其他Session(对话)看见. ...
- oracle什么时候须要commit
今天在oracle的SQL plus 中运行了删除和查询操作,然后在PL/SQL中也运行查询操作,语句一样,结果却不一样,让我大感郁闷,后来才突然想到可能是两边数据不一致造成的,可是为什么不一致呢,就 ...
- oracle 尽量多使用COMMIT
只要有可能,在程序中尽量多使用COMMIT, 这样程序的性能得到提高,需求也会因为COMMIT所释放的资源而减少: COMMIT所释放的资源: a. 回滚段上用于恢复数据的信息. b. ...
- #oracle恢复已被commit删除的内容
1.FLASHBACK QUERY 闪回到15分钟前 SELECT * FROM tablename AS OF TIMESTAMP(SYSTIMESTAMP - INTERVAL '15' MINU ...
- How To Commit Just One Data Block Changes In Oracle Forms
You have an Oracle Form in which you have multiple data blocks and requirement is to commit just one ...
- oracle之 调整 I/O 相关的等待
I/O相关竞争等待简介 当Oracle数据库出现I/O相关的竞争等待的时候,一般来说都会引起Oracle数据库的性能低下,发现数据库存在I/O相关的竞争等待一般可以通过以下的三种方法来查看Oracle ...
- Oracle redo undo
通常对undo有一个误解,认为undo用于数据库物理地恢复到执行语句或事务之前的样子,但实际上并非如此.数据库只是逻辑地恢复到原来的样子,所有修改都被逻辑地取消,但是数据结构以及数据库块本身在回滚后可 ...
- 对oracle数据库进行增删改更新操作,executeUpdate()执行卡住了
原因是:oracle数据库更新数据后需要commit,不然会堵塞,就会卡住 那么每次调用executeUpdate()完后,数据库要自动commit才可以. 我的基类加了一下,注意红色字体部分代码: ...
随机推荐
- Limu:JavaScript的那些书
博主说:本博客文章来源包括转载,翻译,原创,且在文章内均有标明.鼓励原创,支持创作共享,请勿用于商业用途,转载请注明文章链接.本文链接:http://www.kein.pw/?p=50 去年(2012 ...
- DB2字符处理函数
转自:http://www.blogjava.net/bingle/archive/2007/07/11/129681.html ----------------------------------- ...
- js----Date\Math\数组对象
- Control.DataBinding数据绑定细解
在C#操作数据库过程中,针对一般的文本控件,比如TextBox,Label等,我们赋值直接使用类似TextBox.Text=****的方式 来进行,这种方式从某种意义上来说的确是最简便的方式,但是对于 ...
- poj2391 Ombrophobic Bovines 拆点+二分法+最大流
/** 题目:poj2391 Ombrophobic Bovines 链接:http://poj.org/problem?id=2391 题意:有n块区域,第i块区域有ai头奶牛,以及一个可以容纳bi ...
- 简述基于Struts框架Web应用的工作流程
简述基于Struts框架Web应用的工作流程 解答:在web应用启动时就会加载初始化ActionServlet,ActionServlet从struts-config.xml文件中读取配置信息,把它们 ...
- 关闭ReSharper中的[ Use 'var' ]提示(Disable C# “var” Recommendation in ReSharper)
ReSharper,确实是个很不错的工具,代码如果写得不规范他会提示,而且可以根据自己公司的需求自定义代码规范. 默认设置的提示已经相当完美,但美中不足就是老提示你用var来代替所有类型. 按以下步骤 ...
- 【BZOJ】3203: [Sdoi2013]保护出题人(几何+三分+特殊的技巧)
http://www.lydsy.com/JudgeOnline/problem.php?id=3203 wa无数次QAQ,犯sb错....一是数组没有引用...二是输出转成了int(越界了sad). ...
- [翻译]在ASP.NET Web API中通过OData支持查询和分页
OData可以通过形如http://localhost/Products?$orderby=Name这样的QueryString传递查询条件.排序等.你可以在任何Web API Controller中 ...
- CSS中的绝对定位(absolute)误区
这几天在慕课上看视频学习,偶然听到几个老师都说:CSS绝对定位在没有其他有除static定位的包含块的情况下是以body进行定位,如果要想相对当前元素的父元素来定位,父元素一定要设置position: ...