如何判断控制文件是不是从备份中恢复的_绿色软件之家

绿色软件之家:您身边最放心的安全下载站! 最新更新|软件分类|软件专题|手机版|系统之家|纯净系统

您当前所在位置:首页数据库Oracle → 如何判断控制文件是不是从备份中恢复的

如何判断控制文件是不是从备份中恢复的

时间:2015/6/28来源:绿色软件之家作者:网管联盟我要评论(0)

  昨天测试把DB迁移到ASM。迁移的过程很简单,不说了。过程中遇到一个问题。

  迁移控制文件采用两种方式:

  1. 打开数据库到mount状态,备份控制文件,然后shutdown。更改control_files路径。

  进入nomount,用RMAN方式restore刚才备份控制文件,然后mount,open。这时提示需要resetlogs打开。

  2.更改control_files路径,进入nomount,用RMAN方式restore原路径下的控制文件,然后mount,open。一切正常,没有提示需要resetlogs打开。

  那么oracle是如何断定这个控制文件是从备份中恢复的呢。根据eygle的深入解析上所说的。

  检查控制文件头与数据文件头的SCN是否匹配,来判断控制文件是否从备份中恢复。在这里可能不行。因为数据库从未打开过,SCN不会变化的,通过我导出文件头信息也证明了这一点。

  eygle也提到用Control seq来判断。我发现数据库到MOUNT状态,然后关闭,再到MOUNT。

  Control seq一直递增。这也不是以上两种方式的差异。一番测试后又有所发现:

  1. 用备份的控制文件restore之前的控制文件dump:

  DUMP OF CONTROL FILES, Seq # 447 = 0x1bf

  V10 STYLE FILE HEADER:

  Compatibility Vsn = 169870080=0xa200300

  Db ID=2480234890=0x93d5618a, Db Name='SMART4A3'

  Activation ID=0=0x0

  Control Seq=447=0x1bf, File size=430=0x1ae

  File Number=0, Blksiz=16384, File Type=1 CONTROL

  2. 用备份的控制文件restore之后的控制文件dump:

  DUMP OF CONTROL FILES, Seq # 450 = 0x1c2

  V10 STYLE FILE HEADER:

  Compatibility Vsn = 169870080=0xa200300

  Db ID=2480234890=0x93d5618a, Db Name='SMART4A3'

  Activation ID=0=0x0

  Control Seq=450=0x1c2, File size=430=0x1ae

  File Number=0, Blksiz=16384, File Type=4 BACKUP CONTROL

  可以看Control Seq是一直增长的。但后者标识File Type=4 BACKUP CONTROL. 这也许就是ORACLE来判断控制文件是否从备份中恢复的。不知是否准确,请高手指点一二。

关键词标签:备份,恢复

相关阅读

文章评论
发表评论

热门文章 Oracle中使用alter table来增加,删除,修改列Oracle中使用alter table来增加,删除,修改列oracle中使用SQL语句修改字段类型-oracle修oracle中使用SQL语句修改字段类型-oracle修使用低权限Oracle数据库账户得到管理员权限使用低权限Oracle数据库账户得到管理员权限Oracle对user的访问控制Oracle对user的访问控制

相关下载

人气排行 ORACLE SQL 判断字符串是否为数字的语句Oracle中使用alter table来增加,删除,修改列的语法ORACLE和SQL语法区别归纳(1)oracle grant 授权语句如何加速Oracle大批量数据处理Oracle删除表的几种方法ORACLE修改IP地址后如何能够使用Oracle 10g创建表空间和用户并指定权限