Oracle数据库遭遇断电遭遇ora-00214、ora-00314、ora-00312错误恢复案例一枚

1、数据库在17日21:19启动开始报错ora-214错误:

Tue Jan 17 21:19:10 2017

alter database mount exclusive

Tue Jan 17 21:19:13 2017

ORA-214 signalled during: alter database mount exclusive...

Dump file d:\oracle\product\10.2.0\admin\orcl\bdump\alert_orcl.log

2、从控制文件看目前controlfile文件信息如下:

control_files            = D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL01.CTL, D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL02.CTL, D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL03.CTL

3、从sqlplus界面看到CONTROL01.CTL的版本号低于CONTROL02.CTL版本号,根据规则、保留高版本CONTROL文件原则尝试重新启动数据库:

修改参数文件中控制文件信息如下:

control_files            = D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL02.CTL, D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\CONTROL03.CTL

尝试重新启动数据库,成功进入mount状态。

Fri Apr 14 10:28:33 2017

ALTER DATABASE   MOUNT

MMNL started with pid=12, OS id=4396

Fri Apr 14 10:28:37 2017

Setting recovery target incarnation to 2

Fri Apr 14 10:28:37 2017

Successful mount of redo thread 1, with mount id 1469023441

Fri Apr 14 10:28:37 2017

Database mounted in Exclusive Mode

Completed: ALTER DATABASE   MOUNT

4、继续open数据库,发现报错如下:

Fri Apr 14 10:28:37 2017

ALTER DATABASE OPEN

Fri Apr 14 10:28:38 2017

Errors in file d:\oracle\product\10.2.0\admin\orcl\bdump\orcl_lgwr_5244.trc:

ORA-00314: log 1 of thread 1, expected sequence# 76 doesn't match 79

ORA-00312: online log 1 thread 1: 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO01.LOG'

Fri Apr 14 10:28:38 2017

Errors in file d:\oracle\product\10.2.0\admin\orcl\bdump\orcl_lgwr_5244.trc:

ORA-00314: log 1 of thread 1, expected sequence# 76 doesn't match 79

ORA-00312: online log 1 thread 1: 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO01.LOG'

警告日志报错D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO01.LOG日志文件损坏。

5、清空日志组1,成功open数据库:

Fri Apr 14 10:48:48 2017

alter database clear logfile group 1

Fri Apr 14 10:48:48 2017

Clearing online log 1 of thread 1 sequence number 76

Completed: alter database clear logfile group 1

Fri Apr 14 10:49:00 2017

alter database open

Fri Apr 14 10:49:01 2017

Thread 1 advanced to log sequence 79 (thread open)

Thread 1 opened at log sequence 79

Current log# 1 seq# 79 mem# 0: D:\ORACLE\PRODUCT\10.2.0\ORADATA\ORCL\REDO01.LOG

Successful open of redo thread 1

Fri Apr 14 10:49:01 2017

MTTR advisory is disabled because FAST_START_MTTR_TARGET is not set

Fri Apr 14 10:49:01 2017

SMON: enabling cache recovery

Fri Apr 14 10:49:02 2017

Successfully onlined Undo Tablespace 1.

Fri Apr 14 10:49:02 2017

SMON: enabling tx recovery

Fri Apr 14 10:49:03 2017

Database Characterset is ZHS16GBK

Opening with internal Resource Manager plan

where NUMA PG = 1, CPUs = 4

replication_dependency_tracking turned off (no async multimaster replication found)

Starting background process QMNC

QMNC started with pid=16, OS id=4728

Fri Apr 14 10:49:08 2017

Completed: alter database open

故障恢复完成。

Oracle备份恢复之断电导致控制文件和日志文件损坏修复的更多相关文章

  1. ORACLE体系结构一 (物理结构)- 数据文件、日志文件、控制文件和参数文件

    一.物理结构Oracle物理结构包含了数据文件.日志文件.控制文件和参数文件 1.数据文件每一个ORACLE数据库有一个或多个物理的数据文件(data file).一个数据库的数据文件包含全部数据库数 ...

  2. [转帖]oracle备份恢复之recover database的四条语句区别

    oracle备份恢复之recover database的四条语句区别 https://www.cnblogs.com/andy6/p/5925433.html 需要学习一下. 1  recover d ...

  3. ORACLE 移动数据文件 控制文件 重做日志文件

    ORACLE数据库有时候需要对存储进行调整,增加分区.IO调优等等,此时需要移动数据文件.重做日志文件.控制文件等等,下文结合例子总结一下这方面的知识点. 进行数据文件.重做日志文件.控制文件的迁移前 ...

  4. 批量迁移Oracle数据文件,日志文件及控制文件

    有些时候需要将Oracle的多个数据文件以及日志文件重定位或者迁移到新的分区或新的位置,比如磁盘空间不足,或因为特殊需求.对于这种情形可以采取批量迁移的方式将多个数据文件或者日志文件实现一次性迁移.当 ...

  5. Oracle备份恢复之热备份恢复及异机恢复

    原理: 数据库必须运行在归档模式下,否则备份没有意义.备份前冻结块头,使scn号不变化,然后cp物理文件,最后解冻块头.此过程dml语句可以正常执行,动作被写在日志文件里面,当解冻scn号后,日志文件 ...

  6. 数据文件、日志文件、归档文件、控制文件、参数文件及RMAN备份数据库信息查询

    一.查看数据库信息:=====================1.数据文件 SQL> SELECT FILE#,STATUS,ENABLED,NAME FROM V$DATAFILE; FILE ...

  7. Oracle 物理结构(七) 文件-归档日志文件

    Oracle 物理结构(七) 文件-归档日志文件

  8. Oracle_管理控制文件和日志文件

    控制文件: 控制文件在数据库创建时被自动创建,并在数据库发生物理变化时更新.控制文件被不断更新,并且在任何时候都要保证控制文件是可用的.只有Oracle进程才能安全地更新控制文件的内容,所以,任何时候 ...

  9. rabbitmq更换数据文件和日志文件的存放位置

    原来的默认位置是/var下 需要将这些文件更换位置 1.先创建数据文件和日志文件存放位置的目录并给权限 mkdir -p /usr/local/rabbitmq/mnesia mkdir -p /us ...

随机推荐

  1. SpringMVC由浅入深day01_6源码分析(了解)

    6 源码分析(了解) 通过前端控制器源码分析springmvc的执行过程. 入口 第一步:前端控制器接收请求 调用doDiapatch 第二步:前端控制器调用处理器映射器查找 Handler 第三步: ...

  2. Objective-C语法之动态类型(isKindOfClass, isMemberOfClass,id)等

    对象在运行时获取其类型的能力称为内省.内省可以有多种方法实现. 判断对象类型 -(BOOL) isKindOfClass: classObj 判断是否是这个类或者这个类的子类的实例/ 判断是否是这个类 ...

  3. C语言对文件的基本操作

    在C语言中,对于文件的操作是利用FILE结构体进行的. 几个常用的操作文件函数简介 1:打开文件 FILE *fopen( const char *filename, const char *mode ...

  4. 存储过程中SELECT INTO的使用

    在MySQL存储过程中使用SELECT …INTO语句为变量赋值: 用来将查询返回的一行的各个列值保存到局部变量中. 要求: 查询的结果集中只能有1行. SELECT col_name[,...] I ...

  5. Python迭代器笔记

    python中的三大器有迭代器,生成器,装饰器,本文重点讲解下迭代器的概念,使用,自定义迭代器等的介绍. 1.概念: 迭代器是一个对象,一个可以记住遍历位置的对象,迭代器对象从集合的第一个元素开始访问 ...

  6. 嵌入式ROOTFS transplantation

    作一个嵌入式Linux rootfs,并且实现 web 服务 1. 文件系统简介 •理论上说一个嵌入式设备如果内核能够运行起来,且不需要运行用户进程的话,是不需要文件系统的,文件系统简单的说就是一种目 ...

  7. 《C++ Primer Plus》第17章 输入、输出和文件 学习笔记

    流是进出程序的字节流.缓冲区是内存中的临时存储区域,是程序与文件或其他I/O设备之间的桥梁.信息在缓冲区和文件之间传输时,将使用设备(如磁盘驱动器)处理效率最高的尺寸以大块数据的方式进行传输.信息在缓 ...

  8. 【LeetCode OJ】Majority Element

    题目:Given an array of size n, find the majority element. The majority element is the element that app ...

  9. Python六大开源框架对比:Web2py略胜一筹(转)

    Python是一门动态.面向对象语言.其最初就是作为一门面向对象语言设计的,并且在后期又加入了一些更高级的特性.除了语言本身的设计目的之外,Python标准库也是值得大家称赞的,Python甚至还自带 ...

  10. 【Spring Boot&&Spring Cloud系列】使用Intellij构建Spring Boot和Mybatis项目

    一.创建项目 1.File->New->Project->spring initializer 2.勾选Web SQL Template Engines 3.项目生成之后,点击add ...