提起checkpoint来,其实这是一个动作。

她和很多的oracle中的东西一起来complete the task of the complicated oracle

checkpoint有两种

1:system checkpoint

2:增量checkpoint

在这里我们主要讨论的是增量checkpoint

既然检查点是一个动作

那么动作的具体内容是什么呢?


我认为的动作:

CKPT进程把SCN写到数据文件的文件头中

DBWN进程读取redo日志记录的data block的改动,把这些改动修改到物理的disk中



是这样吗?

真是TM的奇怪,我认为的竟然不对,我FUCK


第二点有人的观点其实是这样:

分为两部分:1:这是哪个进程?把内存中的脏数据同步到硬盘中

2:实例崩溃的时候,利用redo日志中记录的data block的改变进行数据恢复,把数据、




actually the oracle checkpoint has more comlicated mechanism than I ever thought

so ,here I list the thing I know ,and let's find out what is wrong

oracle checkpoint 是什么?

一个动作,动作的内容是上述的内容


oracle checkpoint的逻辑的含义是:

因为我们commit的时候,是会把redo log buffer中的内容同步到redolog中

但是其实呢,我们的数据在此时并没有同步到硬盘中,如果我们提交的话,马上同步到硬盘中的话,这样会导致性能受到很大的影响

这个原因,我可以接受


所以呢,如果保证数据同步呢,我们使用了checkpoint的方式

CKPT进程是触发checkpoint的


其实我对这个东西是有疑问的

checkpoint这个东西,其实从功能上来讲

就是把BUFFER CACHE中的内容sync到硬盘里

触发一次checkpoint的mechanism是什么?

我看了DAVE的日志,非常复杂的实现机理

我还是先就这样吧

BUT,I REALLY DON'T HAVE TIME AND ENERGY TO SWIM into it

I'M TIRED and exhausted ,couldn't explore any more

I know it ,this is it


说到checkpoint,就不得不提到另外的一个东西,SCN


SO ,i hate to end like this ,but I have to

cause ,this is it

I may look back one day and change things here and I may add things here

I know who I am ,I'm over extended ,I finish things

but it's not today ,today I let go