只丢失或损坏一个控制文件的情况下来恢复数据库,相对来说简单一点。一般来说,控制文件都需要形成

一个多路径冗余策略,来提高数据库的安全性。这样的话只需将完好的控制文件复制一个副本放到丢失或者

损坏了的控制文件所在路径的目录下,这样启动数据库就能够识别得到控制文件,也就能够恢复数据库了。

以下是测试的过程:

----丢失一个控制文件恢复数据库:

---查看控制文件的信息:

sys@PROD>select name from v$controlfile;

NAME

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

/u01/app/oracle/oradata/PROD/control01.ctl

/u01/app/oracle/fast_recovery_area/PROD/control02.ctl

---删除2号控制文件模拟丢失控制文件:

[oracle@enmo PROD]$ pwd

/u01/app/oracle/fast_recovery_area/PROD

[oracle@enmo PROD]$ ls

archivelog  autobackupcontrol02.ctlonlinelog

[oracle@enmo PROD]$ rm control02.ctl

[oracle@enmo PROD]$ ls

archivelog  autobackup  onlinelog

[oracle@enmo PROD]$

#已经成功删除2号控制文件。

---尝试创建一个表空间:

sys@PROD>create tablespace test datafile

2  '/u01/app/oracle/oradata/PROD/test01.dbf' size 10M;

create tablespace test datafile

*

ERROR at line 1:

ORA-00210: cannot open the specified control file

ORA-00202: control file:

'/u01/app/oracle/fast_recovery_area/PROD/control02.ctl'

ORA-27041: unable to open file

Linux-x86_64 Error: 2: No such file or directory

Additional information: 3

#报错:ORA-00210,不能识别并把创建表空间的信息注册到2号控制文件。

---尝试关库:

sys@PROD>shutdown immediate;

ORA-00210: cannot open the specified control file

ORA-00202: control file: '/u01/app/oracle/fast_recovery_area/PROD/control02.ctl'

ORA-27041: unable to open file

Linux-x86_64 Error: 2: No such file or directory

Additional information: 3

sys@PROD>

#同样的报错ORA-00210。

---强行关库:

sys@PROD>shutdown abort;

ORACLE instance shut down.

sys@PROD>

---退出sqlplus并重新登录数据库:

[oracle@enmo ~]$ sqlplus / as sysdba

SQL*Plus: Release 11.2.0.4.0 Production on Tue Nov 22 23:30:48 2016

Copyright (c) 1982, 2013, Oracle.  All rights reserved.

Connected to an idle instance.

PROD>startup

ORACLE instance started.

Total System Global Area  835104768 bytes

Fixed Size                  2257840 bytes

Variable Size             507513936 bytes

Database Buffers          322961408 bytes

Redo Buffers                2371584 bytes

ORA-00205: error in identifying control file, check alert log for more info

#报错:ORA-00205,能识别并打开控制文件。

--查看此时实例的状态:

PROD>select status from v$instance;

STATUS

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

STARTED

---系统层从1号控制文件复制一个放到2号控制文件原来的目录:

[oracle@enmo PROD]$ pwd

/u01/app/oracle/oradata/PROD

[oracle@enmo PROD]$ cp control01.ctl /u01/app/oracle/fast_recovery_area/PROD/control02.ctl

[oracle@enmo PROD]$

[oracle@enmo PROD]$ pwd

/u01/app/oracle/fast_recovery_area/PROD

[oracle@enmo PROD]$ ls

archivelog  autobackup  control02.ctl  onlinelog

#完成复制。

---把实例调至mount状态与open状态:

PROD>alter database mount;

Database altered.

PROD>alter database open;

Database altered.

#控制恢复完成,数据库恢复完成。

--这种情况恢复数据库的难度不到,工作量也相对少一点,最关键一点就是丢失一个或多个控制文件后,

能够有且至少还有一个冗余的控制文件映射。

oracle某个表丢失,丢失一个控制文件并恢复数据库相关推荐

  1. 查询oracle数据库错误修改了,【案例】Oracle报错ora-00600[2662] 修改控制文件scn推进数据库scn...

    天萃荷净 运维DBA反映数据库重启后无法启动,报错ora-00600[2662],分析原因为SCN异常导致,通过修改控制文件scn推进数据库scn 在数据库遇到ora-600[2662],scn不一致 ...

  2. oracle 11g 从rman全备中恢复控制文件,拥有RMAN全备(缺少后增文件),丢失全部数据文件,控制文件的恢复...

    1.做一个RMAN的全备 E:\oracle\rman_scripts>rman catalog target 恢复管理器: Release 10.2.0.1.0 - Production on ...

  3. oracle缺少控制文件,关于oracle丢失控制文件的恢复办法

    1,在备份的情况下 在nomount状态下restore controlfile form autobackup(针对自动备份开启的情况如果没有开启,就绪指定到具体的目录) 这里指出 using ba ...

  4. 向oracle表空间添加一个数据文件命令

    向表空间添加一个数据文件SQL语句: ALTER TABLESPACE sde ADD DATAFILE'D:\app\Administrator\oradata\orcl\sde1' SIZE 40 ...

  5. oracle 控制文件在哪里设置_从Oracle到PostgreSQL:最全控制文件

    原文: 从Oracle到PostgreSQL:最全控制文件(上) https://www.enmotech.com/web/detail/1/770/1.html 从Oracle到PostgreSQL ...

  6. 从Oracle到PostgreSQL:最全控制文件

    墨墨导读:本文介绍了Oracle和PostgreSQL控制文件基本内容,对如何重建PostgreSQL控制文件进行了详细描述并进行了恢复测试. 控制文件内容 Oracle控制文件内容 从官方文档上可以 ...

  7. oracle之物理数据库结构概述(数据文件、重做日志文件,控制文件等各种数据库文件)

    oracle之物理数据库结构概述 oracle的物理结构其实是由各种各样的文件组成的, 其中与数据库相关的有: 数据文件(data file):这些文件是数据库的主要文件:其中包括数据表.索引和所有其 ...

  8. oracle体系三大文件,oracle 体系_第三章控制文件

    第三章 控制文件 1.功能特点 记录数据库当前的物理状态 维护数据库的一致性,是一个二进制的小文件 在mount阶段被读取,记录rman备份的元数据 查看database控制文件的位置 Show pa ...

  9. oracle控制文件还原,Oracle的控制文件的恢复与重建

    当数据丢失一个控制文件 模拟丢失控制文件 [oracle@localhost orcl]$ pwd /u01/app/oracle/oradata/orcl [oracle@localhost orc ...

最新文章

  1. 【转】一步一步学Linq to sql(五):存储过程
  2. 【BZOJ 1528】 1528: [POI2005]sam-Toy Cars (贪心+堆)
  3. Android Git 客户端
  4. C++输入、输出优化模板整理
  5. 如何重新安装 Linux 的操作管理套件 (OMS) 代理
  6. 雷军1994年写的老代码曝光,被称像诗一样优雅
  7. JavaScript实现复选框的全选/全不选和批量选择
  8. ecshop程序结构说明
  9. 基于深度学习的图像修补/完整方法分析
  10. 我们无法更新系统保留的分区_系统更新是我们手机的基本功能之一 安卓智能更新有哪些用途...
  11. 钢琴专业打谱软件 Overture 4.02
  12. mariaDB安装与配置
  13. Security Trimming Secrets
  14. STC系列51单片机延时程序汇总
  15. 第三章总体均数的估计与假设检验(2)
  16. 罗彻斯特大学计算机科学系专业排名,罗切斯特大学优势专业及优势专业排名(USNEWS美国大学排名)...
  17. 人工智能+大数据+云计算
  18. 数据挖掘和知识发现的技术、方法及应用
  19. win10.10 激活
  20. 迷你酷狗播放器 v1.017

热门文章

  1. 人工智能--野人过河
  2. 杨老师课堂_Java核心技术下之控制台模拟记事本案例...
  3. 在Kubernetes v1.8中使用RBAC
  4. 浅谈 javascript 中的this绑定问题
  5. [日常] Go语言圣经-函数递归习题
  6. Android 多媒体综述
  7. WindowsServer2012史记7-茴香豆的五种写法和四种”显示计算机”的方法
  8. 流水账(4)---礼拜二---“抗议,我不是电工!”
  9. sont表示元素在存入集合时进行了排序,数据遍历的结果是按某个排序规则输出的
  10. 怎么用vc采集ni卡数据_智能水表读数怎么看?家用智能水表怎么安装?