oracle启动过程中的一致性检查

oracle启动过程中的一致性检查
1.对比 start scn 与 checkpoint scn 
2.对比 start scn 与 end scn 
一、第一次检查是决定是否做 media recover 
1.对比控制文件中记录的数据库全局检查点 Checkpoint SCN 和 数据文件头部所记录的数据文件的 Start SCN 是否相等,从而确定是否需要进行介质恢复。 两者不相等需介质恢复时, 介质恢复的起始点是各数据文件头部所记录的 Start SCN 对应的 RBA 终点是控制文件中记录的数据库全局检查点 Checkpoint SCN 对应的 RBA 
2.两者若相等则进行第二次检查是决定是否做 instance recover 


二、第二次检查是决定是否做 instance recover 对每个数据文件都作这样的检查,然后打开数据库: 
1.检查对数据文件头中的中对应文件的 Start SCN 和 控制文件中对应文件的 end SCN 
2.分两种情况 
a.如果 end SCN 等于 start SCN,则不需要对那个文件进行 redo 恢复。 
b.如果上次数据库用 ABORT 等非正常关闭的,数据库没进行检查点处理,而结束SCN 仍然为无穷大或 null。 在下次启动期间,发现开始 SCN 和结束 SCN 不同,需要进行实例恢复: 前滚,online,后滚 
3.作为打开过程的一部分,要将结束 SCN 重新设置为无穷大或 null

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26794255/viewspace-1401556/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/26794255/viewspace-1401556/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Oracle启动时,可以使用DBVERIFY工具来校验所有数据文件的一致性。DBVERIFY是Oracle提供的一个验证工具,它可以检查数据文件的数据块是否损坏、是否包含无效数据等问题。以下是使用DBVERIFY校验数据文件一致性的步骤: 1. 停止Oracle数据库实例。 2. 运行dbv命令,语法如下: ``` dbv file=<datafile_name> blocksize=<block_size> ``` 其,<datafile_name>是要校验的数据文件名,<block_size>是数据块的大小。 如果要校验多个数据文件,可以使用通配符"*",例如: ``` dbv file='/u01/app/oracle/oradata/test/*.dbf' blocksize=8192 ``` 3. 执行命令后,DBVERIFY将扫描指定的数据文件并输出校验结果。如果数据文件存在损坏的数据块,DBVERIFY将报告错误信息。 例如: ``` DBVERIFY: Release 12.1.0.2.0 - Production on Fri Jun 11 13:24:01 2021 Copyright (c) 1982, 2014, Oracle and/or its affiliates. All rights reserved. DBVERIFY - Verification starting : FILE = /u01/app/oracle/oradata/test/system01.dbf DBV-00100: Block, 1, marked corrupt for invalid redo application DBVERIFY - Verification complete Total Blocks Examined : 6400 Total Blocks Processed (Data) : 46 Total Blocks Failing (Data) : 1 Total Blocks Processed (Index): 0 Total Blocks Failing (Index): 0 Total Blocks Empty : 6354 Total Blocks Marked Corrupt : 1 ``` 上面的输出结果显示,校验了system01.dbf文件,发现1个数据块有错误。DBVERIFY还输出其他有关校验结果的统计信息,如扫描的数据块总数、数据块的类型等。 4. 根据DBVERIFY的报告,可以判断数据文件是否损坏,如果有损坏的数据块需要进行数据恢复操作,以确保数据的一致性

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值