博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ORACLE数据库不同故障下的恢复总结
阅读量:6976 次
发布时间:2019-06-27

本文共 1227 字,大约阅读时间需要 4 分钟。

ORACLE数据库不同故障下的恢复总结

1. 非归档模式下丢失或损坏的文件
--1.1 数据文件
--启动数据库的状态到MOUNT
--恢复方法:
通过之前创建的数据库完整备份,修复整个数据库,不过备份之后发生的所有修改将丢失;修复数据库之后不需要进行RECOVER操作。(由于没有归档,也无从RECOVER),直接通过RESETLOGS方式打开数据库即可。

--1.2 数据文件及联机重做日志文件

--启动数据库的状态到MOUNT
--恢复方法(同上):
通过之前创建的数据库完整备份,修复整个数据库,不过备份之后发生的所有修改将丢失;修复数据库之后不需要进行RECOVER操作。(由于没有归档,也无从RECOVER),直接通过RESETLOGS方式打开数据库即可。

--1.3 数据文件及控制文件

--启动数据库的状态到NOMOUNT(控制文件丢失或损坏,只能启动数据库到NOMOUNT状态)
--恢复方法(同上):
通过之前创建的数据库完整备份,修复整个数据库,不过备份之后发生的所有修改将丢失;修复数据库之后不需要进行RECOVER操作。(由于没有归档,也无从RECOVER),直接通过RESETLOGS方式打开数据库即可。
======
说明:以上三种情况下执行数据库修复,都必须有正确的控制文件备份。另外,在上述几种情况下进行数据库恢复时,唯一一种可以不使用RESETLOGS选项打开数据库的情况,就是创建数据库完整备份之后,联机重做日志文件中的内容还没有被覆盖掉,那么可心通过RECOVER操作应用这部分日志。
============================
2. 归档模式下丢失或损坏的文件
--2.1 一个或多个数据文件
--启动数据库的状态到MOUNT/OPEN均可
--恢复方法:
在数据库打开可是加载的状态下执行表空间或数据文件的恢复操作,首先要将表空间或数据文件置于OFFLINE状态,然后通过备份RETORE和RECOVER,最后再将其置为ONLINE状态。这种操作不会丢失数据,并且在操作的过程中,数据库的其他数据文件仍可被正常访问。

--2.2 全部数据文件

--启动数据库的状态到NOMOUNT
--恢复方法
应用之前的全库备份进行恢复,在联机重做日志文件和归档文件仍在的情况下,不会丢失数据。

--2.3 控制文件及一个或多个数据文件

--启动数据库的状态到NOMOUNT
--恢复方法:
首先通过备份的控制文件先对控制文件进行恢复,然后即可打开数据库到MOUNT状态。再对数据文件进行RESTORE和RECOVER操作;在联机重做日志文件都在的情况下,这种操作不会丢失数据。
==========================================
只要是有控制文件或是全部的数据文件丢失,则只能启动数据库到NOMOUNT状态。在归档模式下,不需要以OPEN RESETLOGS方式打开数据库。

转载地址:http://bkupl.baihongyu.com/

你可能感兴趣的文章
Windows XP下,JDK环境变量配置
查看>>
RabbitMQ (四) 路由选择 (Routing)
查看>>
关于ExtJS在使用下拉列表框的二级联动获取数据
查看>>
SPRING3.X JSON 406 和 中文乱码问题
查看>>
多个class相同的input标签 获取当前值!方法!
查看>>
模板方法模式与策略模式的区别
查看>>
html5地理定位数据
查看>>
《JAVA-枚举》
查看>>
使用photoshop 10.0制作符合社保要求的照片
查看>>
Python下使用tarfile模块来实现文件归档压缩与解压
查看>>
思科交换机各类型中字母的意思?
查看>>
linux基础命令
查看>>
我的友情链接
查看>>
Nutanix CE on Lenovo W520 初探
查看>>
make执行过程
查看>>
Ansible源码解析 Inventory组概念
查看>>
数据备份学习
查看>>
替换空格
查看>>
Linux中源码包的管理
查看>>
ASCII、Unicode、GBK和UTF-8字符编码的区别联系
查看>>