当前位置:  数据库>oracle

Oracle控制文件恢复案例

    来源: 互联网  发布时间:2017-05-24

    本文导语: 案例一:单个控制文件丢失 这种情况解决方法很简单,只要把多路复用的控制文件拷贝到相应路径就行了。 案例二:所有控制文件都丢失(用trace中的SQL创建) 在做这个实验前先生成一个trace文件 alter database backup controlfileto trac...

案例一:单个控制文件丢失

这种情况解决方法很简单,只要把多路复用的控制文件拷贝到相应路径就行了。

案例二:所有控制文件都丢失(用trace中的SQL创建)

在做这个实验前先生成一个trace文件

alter database backup controlfileto trace as'/backup/siqianctl.trc';

1.先关闭数据库

shutdown immediate

2.删除所有控制文件

之前可以用show parameter control_files来看下控制文件在哪些路径下

[Oracle@siqian siqian11g]$ rm-f control0*

3.起库出错

startup

ORA-00205: errorin identifying controlfile,check alert logfor more info

4.利用trace来创建控制文件

CREATE CONTROLFILE REUSE DATABASE"SIQIAN11" NORESETLOGS  ARCHIVELOG

    MAXLOGFILES 16

    MAXLOGMEMBERS 3

    MAXDATAFILES 100

    MAXINSTANCES 8

    MAXLOGHISTORY 292

LOGFILE

  GROUP 1 '/u01/oradata/siqian11g/redo01.log'  SIZE 50M,

  GROUP 2 '/u01/oradata/siqian11g/redo02.log'  SIZE 50M,

  GROUP 3 '/u01/oradata/siqian11g/redo03.log'  SIZE 50M

DATAFILE

  '/u01/oradata/siqian11g/system01.dbf',

  '/u01/oradata/siqian11g/sysaux01.dbf',

  '/u01/oradata/siqian11g/undotbs1.dbf',

  '/u01/oradata/siqian11g/users01.dbf',

  '/u01/oradata/siqian11g/example01.dbf',

  '/u01/oradata/siqian11g/test01.dbf'

CHARACTER SET WE8MSWIN1252

;

5.打开数据库

alter database open;

案例三:用trace里的SQL创建的控制文件但此时的创建的控制文件是老的

现在我再创建一个表空间,使控制文件发生变化,一会重建时会缺少那个表空间的数据文件。

1.创建表空间

create tablespace new_ts datafile'/u01/oradata/siqian11g/new_ts01.dbf' size10m;

2.关闭数据库

shutdown immediate

3.删除所有控制文件

[oracle@siqian siqian11g]$ rm-f control0*

4.打开数据库

startup

ORA-00205: errorin identifying controlfile,check alert logfor more info

5.利用trace创建控制文件

CREATE CONTROLFILE REUSE DATABASE"SIQIAN11" NORESETLOGS  ARCHIVELOG

    MAXLOGFILES 16

    MAXLOGMEMBERS 3

    MAXDATAFILES 100

    MAXINSTANCES 8

    MAXLOGHISTORY 292

LOGFILE

  GROUP 1 '/u01/oradata/siqian11g/redo01.log'  SIZE 50M,

  GROUP 2 '/u01/oradata/siqian11g/redo02.log'  SIZE 50M,

  GROUP 3 '/u01/oradata/siqian11g/redo03.log'  SIZE 50M

DATAFILE

  '/u01/oradata/siqian11g/system01.dbf',

  '/u01/oradata/siqian11g/sysaux01.dbf',

  '/u01/oradata/siqian11g/undotbs1.dbf',

  '/u01/oradata/siqian11g/users01.dbf',

  '/u01/oradata/siqian11g/example01.dbf',

  '/u01/oradata/siqian11g/test01.dbf'

CHARACTER SET WE8MSWIN1252

;

6.打开数据库

alter database open;

7.查看dba_data_files数据字典

sys@SIQIAN11>selectfile_name,tablespace_namefrom dba_data_files;

FILE_NAME                                          TABLESPACE_NAME

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

/u01/oradata/siqian11g/test01.dbf                 TEST

/u01/oradata/siqian11g/example01.dbf              EXAMPLE

/u01/oradata/siqian11g/users01.dbf                USERS

/u01/oradata/siqian11g/undotbs1.dbf                UNDOTBS1

/u01/oradata/siqian11g/sysaux01.dbf                SYSAUX

/u01/oradata/siqian11g/system01.dbf                SYSTEM

/u01/oracle/dbs/MISSING00007                      NEW_TS

 

7 rows selected.

发现有个数据文件是‘/u01/oracle/dbs/MISSING00007’,其实出现这种情况是因为控制文件中没有这个表空间的数据文件的记录。

8.关闭数据库并启动到mount

shutdown immediate

startup mount

9.将控制文件中的数据文件名重命名

alter database rename file'/u01/oracle/dbs/MISSING00007' to'/u01/oradata/siqian11g/new_ts01.dbf';

10.打开数据库

alter database open;

11.恢复数据文件

recover datafile 7;


    
 
 

您可能感兴趣的文章:

  • Oracle数据库恢复后心得
  • 关于系统重装后Oracle数据库完全恢复的解决办法
  • oracle drop table(表)数据恢复方法
  • Oracle数据库备份和恢复工具 RMan
  • oracle备份恢复的具体方法
  • oracle中误删除表后恢复语句(FLASHBACK)
  • oracle冷备份恢复和oracle异机恢复使用方法
  • 在Oracle 10gR2中设定指定的恢复点实现轻松闪回
  • Oracle重做日志文件损坏或丢失后的恢复
  • Oracle11g备份和恢复功能的提高
  • 实战Oracle数据库备份与恢复
  • Oracle数据库冷备份的异地恢复
  • oracle下实现恢复一个丢失的数据文件的代码
  • 详解通过Backup Exec来实施Oracle灾难恢复
  • Oracle的恢复管理器及DBMS_JOB包分析
  • Oracle数据库文件恢复以及备份思路
  • Oracle数据库备份恢复最佳实践
  • oracle如何恢复被覆盖的存储过程
  • rman恢复方案和oracle异机恢复
  • oracle数据库创建备份与恢复脚本整理
  • 浅析基于Oracle案例知识库设计
  • oracle使用sql脚本生成csv文件案例学习
  • Oracle案例:分析10053跟踪文件
  • Linux下Oracle常见安装错误总结及参考案例
  • Oracle PL/SQL入门案例实践
  • oracle—SQL技巧之(一)连续记录查询sql案例测试
  • Oracle案例详细分析:Job任务停止执行
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 在HP Unix 下Oracle的控制和管理
  • Oracle控制文件多元化处理
  • Oracle10g 控制台启动端口修改
  • Oracle中存取控制介绍
  • Oracle并购SUN应放松对MySQL控制
  • Oracle中虚拟专用数据控制方法研究
  • Linux平台下启动oracle 11g EM控制台
  • Oracle 入门之控制文件multiplex
  • 手工创建Oracle数据库控制文件的策略
  • Oracle备份的控制文件和新的数据文件
  • Oracle控制文件的损坏或完全丢失的恢复办法
  • Oracle数据操作和控制语言详解
  • DB2和 Oracle的并发控制(锁)的比较
  • Oracle中基于hint的3种执行计划控制方法详细介绍
  • Oracle 12c发布简单介绍及官方下载地址
  • 在linux下安装oracle,如何设置让oracle自动启动!也就是让oracle那个服务自动启动,不是手动的
  • oracle 11g最新版官方下载地址
  • 请问su oracle 和su - oracle有什么不同?
  • Oracle 数据库(oracle Database)Select 多表关联查询方式
  • 虚拟机装Oracle R12与Oracle10g
  • Oracle数据库(Oracle Database)体系结构及基本组成介绍
  • Oracle 数据库开发工具 Oracle SQL Developer
  • 如何设置让Oracle SQL Developer显示的时间包含时分秒
  • Oracle EBS R12 支持 Oracle Database 11g
  • Oracle 10g和Oracle 11g网格技术介绍
  • SCO unix下安装oracle,但没有光盘,请大家推荐一个oracle下载站点(unix版本的)。谢谢!!!!
  • oracle中如何把表中具有相同值列的多行数据合并成一行
  • 请问大家用oracle数据库, 用import oracle.*;下的东西么? 还是用标准库?
  • Oracle 数据库(oracle Database)性能调优技术详解
  • Linux /$ORACLE_HOME $ORACLE_HOME
  • 关于系统重装后Oracle数据库完全恢复的解决办法 iis7站长之家


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,