我在看checkpoint时,网上资料有如下一段:checkpoint 发生时,一方面通知dbwr进行下一批写操作,(dbwr 写入的时候,一次写的块数是有一个批量写的隐藏参数控制的。)另一方面,oracle 采用了一个心跳的概念,以3秒的频率将dbwr 写的进度反应到控制文件中,也就是把dbwr当前刚写完的dirty buffer对应的scn 写入数据文件头和控制文件,这就是检查点scn。
这个3秒和增量检查点不是一个概念,3秒只是在控制文件中,ckpt 进程去更新当前 dbwr写到哪里了,这个对于 ckpt 进程来说叫 heartbeat ,heartbeat是3秒一次,3秒可以看作不停的检查并记录检查点执行情况(DBWR的写进度)。
检查点发生之后数据库的数据文件、控制文件处于一致状态的含义是不需要进行 介质恢复,只表示数据文件头一致,但是并不表示数据文件内容一致,因为数据文件内容可能在没有发生检查点的其他情况下的dbwr写数据文件,这样数据文件内容就不一致,若掉电需要进行崩溃恢复。问下。
1 既然心跳每3秒一次,那么问下,commit的时候,检查点进程会做什么事情呢?如果commit时正处于3秒点呢,ckpt进程又会做些什么事情?2 心跳过后,ckpt进程是不是一开始更新redo日志scn号以及归档日志scn号,再去更新系统scn号,再去更新controle中的数据文件scn号,然后去更新数据文件里面文件头sch号呢?
这个3秒和增量检查点不是一个概念,3秒只是在控制文件中,ckpt 进程去更新当前 dbwr写到哪里了,这个对于 ckpt 进程来说叫 heartbeat ,heartbeat是3秒一次,3秒可以看作不停的检查并记录检查点执行情况(DBWR的写进度)。
检查点发生之后数据库的数据文件、控制文件处于一致状态的含义是不需要进行 介质恢复,只表示数据文件头一致,但是并不表示数据文件内容一致,因为数据文件内容可能在没有发生检查点的其他情况下的dbwr写数据文件,这样数据文件内容就不一致,若掉电需要进行崩溃恢复。问下。
1 既然心跳每3秒一次,那么问下,commit的时候,检查点进程会做什么事情呢?如果commit时正处于3秒点呢,ckpt进程又会做些什么事情?2 心跳过后,ckpt进程是不是一开始更新redo日志scn号以及归档日志scn号,再去更新系统scn号,再去更新controle中的数据文件scn号,然后去更新数据文件里面文件头sch号呢?
解决方案 »
- oracle 存储过程 高手帮忙改一下
- 有谁知道如何让我的TOAD找到oci.dll
- 如何动态取得下级公司人数,然后汇总啊
- 关于序列的问题
- 海量数据的管理问题
- TOAD的一个提示!看不懂?
- 如果我忘記了自己建立過甚麼TABLE, 但我想查自己建立過甚麼TABLE, 有甚麼COMMAND 可以助我查明呢?
- 关于ORACLE9I的的DESIGNER的问题?
- oracle817用dbassist建库的时候有个character set选项,里面有character set跟national character set,请问这两个有什么区别,可以设置为不
- orcale timesten 开发案例
- 急,imp怪异问题,请高手协助
- 明明创建了索引,为什么还是全表扫描?
这么说来,COMMIT跟CKPT没有啥关系。
当发生checkpoint时,会把SCN写到四个地方去。三个地方于control file内,一个在datafile header。
Control file三个地方为
1.System checkpoint SCN
2.Datafile checkpoint SCN
3.Stop SCN 另外一个地方在datafile header内
4.Start SCN
参考blog:RedoLog Checkpoint 和 SCN关系
http://blog.csdn.net/tianlesoftware/archive/2010/01/25/5251916.aspxOracle 备份 与 恢复 概述:http://blog.csdn.net/tianlesoftware/archive/2010/01/25/5251916.aspxhttp://blog.csdn.net/tianlesoftware/archive/2010/01/25/5251916.aspx------------------------------------------------------------------------------
Blog: http://blog.csdn.net/tianlesoftware
网上资源: http://tianlesoftware.download.csdn.net
相关视频:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx
DBA1 群:62697716(满); DBA2 群:62697977