前边在学习Redo Byte Address (RBA) 和检查点的时候都提到一个概念,那就是ckpt
heartbeat,这里说的ckpt
heartbeat是一个跟ckpt进程和oracle的恢复机制有关的概念,好像RAC中也有这个概念,这里不讨论。
biti大师说:
heartbeat-----是ckpt每3秒将当前dbwr写的进度(rba)写到控制文件中
这样当数据库crash 的时候,就可以从一个最近的起点开始恢复而节约时间。
这样当数据库crash 的时候,就可以从一个最近的起点开始恢复而节约时间。
这个定义来自一个讨论heartbeat的帖子
steve曾经这样描述ckpt heartbeat
The checkpoint RBA is copied into the checkpoint progress
record of the controlfile by the checkpoint heartbeat once every 3
seconds.
In 8.0.5 a heartbeat mechanism was included in CKPT's timeout action (every 3 seconds) to update the checkpoint progress record for the thread in the controlfile.
eygle也有两篇讨论heartbeat的文章:
在数据库Mount状态下,我们也可以通过查询X$KCCRT视图来观察heartbeat的变化:
总结:heartbeat是ckpt进程每三秒将dbwr进程写的位置写入到控制文件的一种机制,用来加快实例恢复的时间。
插入表情