ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 表空间OFFLINE和数据文件OFFLINE的区别

表空间OFFLINE和数据文件OFFLINE的区别

原创 Linux操作系统 作者:lsm_3036 时间:2011-08-01 08:22:26 0 删除 编辑

在对表空间进行offline时,oracle需要针对这个表空间生成检查点,刷新表空间中数据文件的相关事务,更新数据文件头SCN,数据文件SCN,文件终止SCN,达到一致状态,当表空间被再次ONLINE时,oracle会捕捉online时刻的SCN,更新上面各个位置的SCN(当然文件结束SCN号会置为无穷大),将数据文件都打开在对单个数据文件做offline时,是立即offline,此时不会针对数据文件生成检查点,所以数据文件的终止SCN为无穷大,处于不一致状态,数据文件也需要recover,在v$recover_file视图也可以看到这个文件的信息,要想将数据文件online,必须先对文件执行recover操作,所以建议offline数据文件后应该立刻执行recover操作,使他处于一致状态,以免后面出现不必要的麻烦

对于非归档模式下进行数据文件offline操作需要接上drop子句,他不会物理删除文件的,在归档模式下指定drop子句会被Oracle忽略

另外对于offline的数据文件,正常重起是不能对他进行recover的,因为他的状态是offline,数据库启动时是不检查offline文件的SCN是否一致的,所以启动后你仍然可以在v$recover_file

视图中看到他,需要手工对他进行recover才能恢复,如果应用的联机日志已经switch掉,则要从归档中进行恢复,没有归档的话,文件就只能一直处于recover状态

ORACLE中的数据文件状态大部分成为RECOVER状态,应该怎么处理,如果RECOVER又报错:

SQL> recover datafile '/ods_oradata/oradata/ods59105.dbf';
ORA-00279: change 12068486233080 generated at 05/29/2011 05:58:45 needed for
thread 1
ORA-00289: suggestion :
/opt/oracle/flash_recovery_area/ODSDATA/archivelog/2011_05_31/o1_mf_1_164870_%u_
.arc
ORA-00280: change 12068486233080 for thread 1 is in sequence #164870


Specify log: {=suggested | filename | AUTO | CANCEL}
ORA-00308: cannot open archived log
'/opt/oracle/flash_recovery_area/ODSDATA/archivelog/2011_05_31/o1_mf_1_164870_%u
_.arc'
ORA-27037: unable to obtain file status
Linux Error: 2: No such file or directory
Additional information: 3

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

请登录后发表评论 登录
全部评论

注册时间:2008-12-08

  • 博文量
    64
  • 访问量
    138402