oracle 段头部,ORACLE数据文件与控制文件头部.doc

为了回答关于《深入浅出Oracle》中的一些疑问,引出本系列文章,讨论链接参考:

/609499.html

在上一讲中,我们说过:当我们使用file_hdrs事件来转储数据文件头信息时,Oracle会转储两部分信息,一部分来自控制文件,一部分来自数据文件,在数据库启动过程中,这两部分信息要用来进行启动验证。

在数据库open的过程中,Oracle要进行检查中包含以下两个过程:

第一次检查数据文件头中的Checkpoint cnt是否与对应控制文件中的Checkpoint cnt一致.如果相等,进行第二次检查.

第二次检查数据文件头的开始SCN和对应控制文件中的结束SCN是否一致如果结束SCN等于开始SCN,则不需要对那个文件进行恢复.

对每个数据文件都完成检查后,打开数据库.同时将每个数据文件的结束SCN设置为无穷大.

通过以下过程我们来进一步说明一下这个内容。

我们来看以下来自控制文件部分(选取一个文件测试):

DATA FILE #4: (name #4) /opt/oracle/oradata/eygle/eygle01.dbfcreation size=0 block size=8192 status=0xe head=4 tail=4 dup=1tablespace 4, index=4 krfil=4 prev_file=0unrecoverable scn: 0x000001/01/1988 00:00:00Checkpoint cnt:58 scn: 0x0000.002ac8ee 08/11/2006 09:48:29Stop scn: 0x0000.002ac8ee 08/11/2006 09:48:29Creation Checkpointed at scn: 0x0000.0015078d 06/06/2006 09:41:54thread:0 rba:(0x0.0.0)................aux_file is NOT DEFINED 这部分中包含的重要信息有:检查点计数: Checkpoint cnt:58检查点SCN: scn: 0x0000.002ac8ee 08/11/2006 09:48:29数据文件Stop SCN:Stop scn: 0x0000.002ac8ee 08/11/2006 09:48:29

我们再看来自数据文件头的信息:

FILE HEADER:Software vsn=153092096=0x9200000, Compatibility Vsn=134217728=0x8000000Db ID=1407686520=0x53e79778, Db Name='EYGLE'Activation ID=0=0x0Control Seq=979=0x3d3, File size=1280=0x500File Number=4, Blksiz=8192, File Type=3 DATATablespace #4 - EYGLE rel_fn:4 Creation at scn: 0x0000.0015078d 06/06/2006 09:41:54Backup taken at scn: 0x000001/01/1988 00:00:00 thread:0reset logs count:0x232bee1f scn: 0x0000.0007c781 recovered at 08/10/2006 20:57:53status:0x0 root dba:0chkpt cnt: 58 ctl cnt:57begin-hot-backup file size: 0Checkpointed at scn: 0x0000.002ac8ee 08/11/2006 09:48:29.......................这部分中包含的重要信息有:检查点SCN: Checkpointed at scn: 0x0000.002ac8ee 08/11/2006 09:48:29检查点计数: chkpt cnt: 58 ctl cnt:57

这两者都和控制文件中所记录的一致。如果这两者一致,数据库启动时就能通过验证,启动数据库。

那么如果不一致呢?Oracle则请求进行恢复。我们看,从备份中恢复eygle01.dbf文件.首先第一部分从控制文件中获得的信息是相同的:

DATA FILE #4: (name #4) /opt/oracle/oradata/eygle/eygle01.dbfcreation size=0 block size=81

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值