现象:业务平台无法登陆,日志报错为ORACLE的错误。

  查看oracle日志的报错,

ORA-00376: file 5 cannot be read at this time
ORA-01110: data file 5: '/oradata/users02.dbf'

  看一下oracle状态,

SQL> select status from v$instance;

STATUS
------------
OPEN

  奇怪了,数据库状态正常,还报错,应该是数据文件有问题,查一下数据文件的SCN,发现确实是datafile 5有问题,其SCN与其他的不一致。

  接下来开始要恢复了。尝试恢复数据文件5,

SQL> recovere datafile 5;
SP2-0734: unknown command beginning "recovere d..." - rest of line ignored.
SQL> recover datafile 5;
ORA-00279: change 14945741822997 generated at 03/22/2018 22:13:55 needed for
thread 1
ORA-00289: suggestion :
/usr/local/oracle/flash_recovery_area/ORCL/archivelog/2018_03_26/o1_mf_1_298748_
%u_.arc
ORA-00280: change 14945741822997 for thread 1 is in sequence #298748 Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
redo03.log;
ORA-00308: cannot open archived log 'redo03.log;'
ORA-27037: unable to obtain file status
Linux-x86_64 Error: 2: No such file or directory
Additional information: 3

  加上until cancle参数再次尝试恢复,恢复数据原则要进程不断尝试

SQL> recover datafile 5 until cancel;
ORA-00274: illegal recovery option UNTIL

  尝试将数据文件5 online,

SQL> alter database datafile 5 online;
alter database datafile 5 online
*
ERROR at line 1:
ORA-01113: file 5 needs media recovery
ORA-01110: data file 5: '/oradata/users02.dbf'

  这里报错,应该是数据库已经OPEN了,无法进行数据文件恢复。将数据库关闭,启动至mount状态,

SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup mount;
ORACLE instance started. Total System Global Area 6747725824 bytes
Fixed Size 2213976 bytes
Variable Size 4160751528 bytes
Database Buffers 2550136832 bytes
Redo Buffers 34623488 bytes
Database mounted.

  再次加上until cancle参数再次尝试恢复,

SQL> recover database until cancel;
Media recovery complete.

  打开数据库,完成介质恢复,

SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-01589: must use RESETLOGS or NORESETLOGS option for database open SQL> alter database open RESETLOGS; Database altered. SQL> select status from v$instance; STATUS
------------
OPEN

  这时,介质恢复应该就完成了,再去查一下SCN,

SQL> select checkpoint_change# from v$datafile;

CHECKPOINT_CHANGE#
------------------
1.4946E+13
1.4946E+13
1.4946E+13
1.4946E+13
1.4946E+13
1.4946E+13
1.4946E+13
1.4946E+13
1.4946E+13
1.4946E+13
1.4946E+13 CHECKPOINT_CHANGE#
------------------
1.4946E+13
1.4946E+13
1.4946E+13 14 rows selected. SQL>

  

一致了,验证一下业务平台,正常了。

记数据库数据文件损坏恢复ORA-00376+ORA-01110的更多相关文章

  1. 非系统数据文件损坏,rman备份恢复

    实验前提:已经做好备份. SQL> col file_name for a50select file_id,file_name from dba_data_files; FILE_ID FILE ...

  2. RMAN数据库恢复之丢失数据文件的恢复

    删除某一数据文件:SQL> HOST del D:\app\Administrator\oradata\orcl\USERS01.dbf 启动数据库,提示丢失数据文件4,此时数据库处理MOUNT ...

  3. RMAN数据库恢复 之归档模式有(无)备份-丢失数据文件的恢复

    1.归档模式有备份,丢失数据文件的恢复归档模式有备份,不管丢失什么数据文件,直接在RMAN下RESTOER--->RECOVER--->OPEN即可. RMAN> STARUP MO ...

  4. MySQL实例多库某张表数据文件损坏导致xxx库无法访问故障恢复

    一.问题发现 命令行进入数据库实例手动给某张表进行alter操作,发现如下报错. mysql> use xx_xxx; No connection. Trying to reconnect... ...

  5. 如何获取SQL Server 2008数据库数据文件的位置

    在SQL Server中,要获取数据库数据文件的物理位置,有三种方法: sp_helpdb bright name          filename                        f ...

  6. [20171225]没有备份数据文件的恢复.txt

    [20171225]没有备份数据文件的恢复.txt --//别人问的问题,增加了数据文件没有备份,如何恢复,实际上很简单,因为当前控制文件有记录建立时间只要从建立数据文件开始的--//归档日志都存在恢 ...

  7. windows下更换MySql数据库数据文件夹位置

    详细解决地址 ,感谢博主  :https://blog.csdn.net/u010953266/article/details/56499361 概述 由于更换硬盘,系统重新安装了一遍,原来的mysq ...

  8. SQL SERVER大话存储结构(6)_数据库数据文件

            数据库文件有两大类:数据文件跟日志文件,每一个数据库至少各有一个数据文件或者日志文件,数据文件用来存储数据,日志文件用来存储数据库的事务修改情况,可用于恢复数据库使用.     这里分 ...

  9. oracle redo日志文件损坏恢复

    参考:How to Recover from Loss Of Online Redo Log And ORA-312 And ORA-313 (Doc ID 117481.1) 在线重做日志文件丢失后 ...

随机推荐

  1. VritualBox安装CentOS及安装增强工具图文教程

    一  VM VirtualBox VirtualBox可在官网https://www.virtualbox.org/下载,完全免费. 二  安装CentOS系统(以CentOS6.9为例) 1.Cen ...

  2. CNN试验记录

    CIFAR-10 图像处理:(预处理还是很重要的) 数据随机裁剪,填充0 依概率p水平翻转 1.VGG16 SGD lr=0.01 momentum 0.9 weight_decay=0.0001 e ...

  3. canvas绘制环形进度条

    <!DOCTYPE html> <html > <head> <meta http-equiv="content-type" conten ...

  4. Java Native

    native 什么是Native Method 简单地讲,一个Native Method就是一个java调用非java代码的接口.一个Native Method是这样一个java的方法:该方法的实现由 ...

  5. java虚拟机的学习书籍推荐

    javaEE开发已然是一个老生常谈的话题了,但经典之所以会成为经典,就是因为有可重复琢磨之处,每一次的反复推敲都会有不一样的收获.如果你不满足于做一个只会写if…else…的Java程序员,而是希望更 ...

  6. Spring BOOT的学习笔记

    1,静态文件夹src/main/resources/static下的,图片必须放在images文件夹下才能访问,直接放在static下不能访问 2,配置热部署,否则修改下Html,图片都得重启 htt ...

  7. HISI VENC 实际输出帧率控制

    https://blog.csdn.net/spy_007_/article/details/83688287 平台:HI3516EV100 SDK : Hi3516CV300_SDK_V1.0.2. ...

  8. 18.14 构建Linux根文件系统

    18.14.1 Busybox1.7.0之init程序分析 1.读取配置文件 2.解析配置文件 3.执行用户程序(根据配置文件中指定的内容) 配置文件: 1.指定应用程序 2.何时执行 busybox ...

  9. case when then

    --使用IN的时候 SELECT keyCol, CASE WHEN keyCol IN ( SELECT keyCol FROM tbl_B ) THEN 'Matched' ELSE 'Unmat ...

  10. cmd常用命令总结

    1.cmd不同盘符之间切换 方法(1): cd /d 路径如:cd /d c:/windows 方法(2): d:2.cls 清空cmd窗口dir 查看文件夹下的目录md 创建文件夹rd 删除文件夹c ...