假设整个数据库系统每秒产生一次提交,也就是每秒SCN增加1,SCN假设开始是=1,我有一个表有10个块,每个ORACLE块4K,由8个512字节的OS块组成,每行记录1个OS块。块号分别是001-010,这个过程也就我们热备的过程

f90ddd7d7703601903e88b858bf51cca.png

1.未修改数据前

001是一个块,由8个os块组成,总共有001-010,10个块,一个OS块存储一行数据2.

c4e437e77b5758157186b3f61656337d.png

修改4个块的4条记录

上图分别有4个UPDATE 语句,对应RBA (4,9,21,30),3和4是一起的,都是对block002的修改,他们在检查点队列在同一个块,队列里面在一起,红色块被更新(002第1行,007第2行,001第3行,006第4行),RBA3是修改前的值O (OLD )会写到UNDO TABLESPACE

0->N ,所以

b45ab97627446a74e93398aeb770cf58.png

O 肯定得进入UNTO

3.重复修改同一个块对检查点队列的影响

BLOCK2(002)被修改2次,但是在检查点队列里仍然排在图上的第2位,SCN=61是日志文件的RBA ,也就是日志文件的地址,也就是当我们执行10:01:30update t..where block=2and row=3;scn=61时, 块2在检查点队列中的位置没有变

ALTER TABLESPACE TEST BEGING BACKUP;

ORACLE 在发送BEGIN BACKUP 后先确定检查点SCN (本例子的检查点SCN 确定为68),就是在SCN=68的时候收到这个命令,再进行检查点,此后检查点计数器会继续增加,以保证数据文件版本为当前版本,不需要介质恢复。检查点计数器checkpoint cnt ,也就是检查点执行了多少次,是一个次数上次修改者: 残日

热备份恢复的过程10步原理

2011年7月16日

22:46

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐