ITPub博客

首页 > 数据库 > Oracle > 通过trace文件重新创建控制文件

通过trace文件重新创建控制文件

原创 Oracle 作者:wzq609 时间:2014-03-25 19:42:24 0 删除 编辑

前言:

       控制文件顺坏一般有2个方法进行还原,第一如果只损坏一个控制文件的话,可以通过拷贝其他冗余的控制文件过来(一般控制文件至少保存在两个位置;

       通过语句可以查询控制文件存放的信息:

SQL> select name from v$controlfile;

NAME

--------------------------------------------------------------------------------

/oracle/PIP/origlogA/cntrl/cntrlPIP.dbf

/oracle/PIP/origlogB/cntrl/cntrlPIP.dbf

/oracle/PIP/sapdata1/cntrl/cntrlPIP.dbf

     如果控制文件都顺坏的话,但是系统有备份,可以还原相应的控制文件,然后进行不完全恢复,具体数据库的恢复已经有发帖介绍过去,请各位自行查找了;

 

但是如果是第三中情况了,所有的控制文件都损坏了,而且没有进行备份,那该怎么办?

本文介绍在这种极端情况下的极端方法,前提你对数据库的信息很熟悉了;

 

操作步骤:

1、在一台运行良好的数据库上面运行以下语句:

SQL> alter database backup controlfile to trace resetlogs; 

然后在相应的alert log下面查找trace产生的语句

2、导出相应的trace文件

       1)查找STARTUP NOMOUNT语句,将这一行上面的所有行都删除

       2)查找所有以--开始的行,把这些行删除

       3)修改所有的db_name跟原来的一致

       4)找到CREATE CONTROLFILE REUSE DATABASE...语句,将其中的REUSE修改为SET

       5)找到RECOVER DATABASE USING BACKUP CONTROLFILE语句,将其用双横线(--)注释掉

    6)修改所有的文件路径跟实际环境的路径一致

    7)把修改后的文件以*.sql方式命名,然后上传到服务器

3、启动数据库

     1) 通过脚本启动数据库   sqlplu:@/oracle/ccf.sql(例如:放在oracle目录下,并以ccf.sql方式命名)

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

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

注册时间:2013-06-16

  • 博文量
    173
  • 访问量
    2917292