之前出现过机房断电情况,重启数据库后发现出现ORA-00376的错误。

通过查询数据文件状态:

SQL> select file_id,online_status from dba_data_files order by 1;
 
   FILE_ID ONLINE_STATUS
---------- -------------
         1 SYSTEM
         2 ONLINE
         3 ONLINE
         4 ONLINE
         5 RECOVER
         6 ONLINE
         7 RECOVER
         8 ONLINE
         9 ONLINE
        10 ONLINE
        11 RECOVER
        12 ONLINE
        13 RECOVER
        14 RECOVER
        15 RECOVER
        16 RECOVER

文件中出现了大量的recover的状态,需要进行介质恢复。

SQL> select file#, status, fuzzy, checkpoint_time, checkpoint_change#,
resetlogs_change#, resetlogs_time from v$datafile_header where file#=5;

FILE# STATUS  FUZZY CHECKPOINT_TIME CHECKPOINT_CHANGE# RESETLOGS_CHANGE# RESETLOGS_TIME
---------- ------- ----- --------------- ------------------ ----------------- --------------
         5 OFFLINE  YES   2013-6-19 9:52:           38391683            940976 2013-5-15 19:1

当前的数据文件的SCN号为 38391683,需要寻找别这个高的archive log 或redo log。

SQL> Select sequence#,name,first_change#,next_change# from v$archived_log;

SEQUENCE#        NAME                                                                                       FIRST_CHANGE# NEXT_CHANGE#
---------- --------------------------------------------------------------------------------                    -------------        ------------
       465 D:\APP\ARCHIVELOG\ARC0000000465_0815512562.0001                   36366097     36618224
       466 D:\APP\ARCHIVELOG\ARC0000000466_0815512562.0001                   36618224     36843775
       467 D:\APP\ARCHIVELOG\ARC0000000467_0815512562.0001                   36843775     37065721
       468 D:\APP\ARCHIVELOG\ARC0000000468_0815512562.0001                   37065721     37294978
       469 D:\APP\ARCHIVELOG\ARC0000000469_0815512562.0001                   37294978     37572830
       470 D:\APP\ARCHIVELOG\ARC0000000470_0815512562.0001                   37572830     37818186
       471 D:\APP\ARCHIVELOG\ARC0000000471_0815512562.0001                   37818186     38093499
       472 D:\APP\ARCHIVELOG\ARC0000000472_0815512562.0001                   38093499     38346397
       473 D:\APP\ARCHIVELOG\ARC0000000473_0815512562.0001                   38346397     38381157

很幸运,38391683大于473这个最大的archive log 的SCN,我不需archive log 的帮助。recover所需的信息在redo log 中。

例如:数据文件file_id为5的处于recover状态,执行

alter database recover datafile 5;

依次恢复状态为recover的数据文件。

再次查看online_status为offline状态,需要执行

Alter database  datafile  5 online;

依次将处于offline的数据文件ONLINE。都online后数据库处于open状态了后,就可以用了。

如果数据库处于No Archive log 状态的时候,recover所需的信息只能从redo log 中获取,如果此时的redo log被overwrite了,将不能online数据文件,那只能想其他方法了。

Possible causes and solutions summary:
=====================================

A. Tablespace or Datafile offline.
  B. Datafile does not exist at the OS level.
  C. Datafile locked by Backup Software.
  D. Incorrectly set ULIMIT on UNIX.
  E. Rollback Segment with active transactions is unavailable
  F. Possible Other Causes.

ORA-00376:file x cannot be read at this time的更多相关文章

  1. PhoneGap奇怪的现象:File FileTransfer download, 手机相册检测不到下载下来的图片(解决)

    我有个从服务器下载相片的功能在使用 File FileTransfer download api时,碰到了很奇怪的现象:图片已经从服务器里下载了,手机文件夹里也可以看到下载过来的图片,但是我的手机相册 ...

  2. 无废话ExtJs 入门教程十三[上传图片:File]

    无废话ExtJs 入门教程十三[上传图片:File] extjs技术交流,欢迎加群(201926085) 1.代码如下: 1 <!DOCTYPE html PUBLIC "-//W3C ...

  3. Linux命令总结:file

    转自:http://www.cnblogs.com/kerrycode/p/3806618.html 1.命令简介:用来识别文件类型,也可辨别一些文件的编码格式.它是通过查看文件的头部信息来获取文件类 ...

  4. Android(java)学习笔记87:File类使用

    package cn.itcast_01; import java.io.File; /* * 我们要想实现IO的操作,就必须知道硬盘上文件的表现形式. * 而Java就提供了一个类File供我们使用 ...

  5. Java基础知识强化之IO流笔记09:File类功能

    详见如下: Android(java)学习笔记87:File类使用

  6. JAVA IO分析一:File类、字节流、字符流、字节字符转换流

    因为工作事宜,又有一段时间没有写博客了,趁着今天不是很忙开始IO之路:IO往往是我们忽略但是却又非常重要的部分,在这个讲究人机交互体验的年代,IO问题渐渐成了核心问题. 一.File类 在讲解File ...

  7. java IO(一):File类

    */ .hljs { display: block; overflow-x: auto; padding: 0.5em; color: #333; background: #f8f8f8; } .hl ...

  8. yum安装命令:遇到的问题报错如下: File "/usr/bin/yum", line 30 except KeyboardInterrupt, e: 通过看报错可以了解到是使用了python2的语法,所以了解到当前yum使用的Python2,因为我单独安装了python3,且python3设置为默认版本了,所以导致语法问题 解决方法: 使用python2.6 yum install

    1.安装zip yum install -y unzip zip 2.安装lrszs yum -y install lrzsz 3.安装scp 遇到下面的问题: 结果提示: No package sc ...

  9. Java IO流学习总结二:File

    Java File类的功能非常强大,利用java基本上可以对文件进行所有操作.首先来看File类的构造函数的源码 /** * Internal constructor for already-norm ...

  10. PLSQL Developer概念学习系列之登录连接Oracle时出现(没有登录) -PL / SQL Developer:ORA - 12541: TNS :无建听程序的错误解决办法(图文详解)

    不多说,直接上干货! 前期博客 PLSQL Developer概念学习系列之如何正确登录连接上Oracle(图文详解)   如用scott.scott_password进行登录,orcl是全局数据库 ...

随机推荐

  1. Servlet的学习之Filter过滤器技术(1)

    本篇将讲诉Servlet中一项非常重要的技术,Filter过滤器技术.通过过滤器,可以对来自客户端的请求进行拦截,进行预处理或者对最终响应给客户端的数据进行处理后再输出. 要想使用Filter过滤器, ...

  2. ubuntu安装Java jdk1.7.0

    1.下载JDK  http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html 2.解压 3. ...

  3. spring mvc 与 jquery ajax

    在 Spring mvc3中,响应.接受 JSON都十分方便. 使用注解@ResponseBody可以将结果(一个包含字符串和JavaBean的Map),转换成JSON. 使用 @RequestBod ...

  4. 基于visual Studio2013解决面试题之1310随机数

     题目

  5. 透过表象看本质!?之三——Kalman滤波

    数据拟合能够估计出数据变化的趋势,另外一个同等重要的应用是如何利用这一趋势,预测下一时刻数据可能的值.通俗点儿说,你观察苍蝇(蚊子,蜜蜂)飞了几秒,你也许会想“它下一个时刻可能在哪儿”,“呈现出什么样 ...

  6. 关于mysql运行效率优化注意事项及要点

    1. SQL优化的原则是:将一次操作须要读取的BLOCK数减到最低,即在最短的时间达到最大的数据吞吐量. 调整不良SQL通常能够从下面几点切入: ? 检查不良的SQL,考虑其写法是否还有可优化内容 ? ...

  7. ASP.NET - 编写让别人能读懂的代码

    http://www.cnblogs.com/richieyang/p/4840614.html

  8. OpenSSL---堆栈

    堆栈是一种先进后出的数据结构.是一种只允许在其一端进行插入或者删除的线性表.允许插入或删除操作的一端为栈顶,另一端称为栈底.对堆栈的插入和删除操作称为入栈和出栈. 1.1     概述 OpenSSL ...

  9. 调用QQ截图

    var SHExecInfo: SHELLEXECUTEINFO; begin //截图前隐藏主程序窗口 Form1.Hide; //等待截图执行完成 SHExecInfo.cbSize := siz ...

  10. js点击button按钮跳转到另一个新页面

    点击按钮怎么跳转到另外一个页面呢?我们在网站制作中可能是需要的,因为有时我们需要做这样的效果,尤其是将按钮做成一个图片,而点击图片要跳转到新的页面时,怎么做到呢? 这样的效果可以:onclick=&q ...