Oracle Recovery 01 - 常规恢复之完全恢复
背景:这里提到的常规恢复指的是数据库有完备可用的RMAN物理备份。
实验环境:RHEL6.4 + Oracle 11.2.0.4 DG primary.
一、常规恢复之完全恢复:不丢失数据
Oracle 数据库常规恢复的几个概念:
常规恢复之完全恢复:不丢失数据。
比如数据文件丢失,临时文件丢失,参数文件丢失。可以通过RMAN备份完全恢复数据库。
示例:Oracle Recovery 01 - 常规恢复之完全恢复
常规恢复之不完全恢复:部分数据丢失。
一般是有控制文件或是在线重做日志文件丢失。通过RMAN备份恢复,resetlogs会导致丢失数据。
示例:Oracle Recovery 02 - 常规恢复之不完全恢复
1.1 单个数据文件丢失或损坏
### 启动数据库报错: ###
SQL> startup
ORACLE instance started.
Total System Global Area 1620115456 bytes
Fixed Size 2253704 bytes
Variable Size 905972856 bytes
Database Buffers 704643072 bytes
Redo Buffers 7245824 bytes
Database mounted.
ORA-01157: cannot identify/lock data file 15 - see DBWR trace file
ORA-01110: data file 15: '+DATA1/jyzhao/datafile/dbs_d_jingyu.259.886871319'
恢复方法:
RMAN>
restore datafile 15;
recover datafile 15;
sql 'alter database datafile 15 online';
sql 'alter database open';
1.2 所有数据文件丢失或损坏
### 启动数据库报错: ###
SQL> startup
ORACLE instance started.
Total System Global Area 1620115456 bytes
Fixed Size 2253704 bytes
Variable Size 905972856 bytes
Database Buffers 704643072 bytes
Redo Buffers 7245824 bytes
Database mounted.
ORA-01157: cannot identify/lock data file 1 - see DBWR trace file
ORA-01110: data file 1: '+DATA1/jyzhao/datafile/system.278.886441901'
恢复方法:
RMAN>
restore database;
recover database;
sql 'alter database open';
1.3 参数文件丢失或损坏
### 启动数据库报错: ###
SQL> startup
ORA-01078: failure in processing system parameters
ORA-01565: error in identifying file '+DATA1/jyzhao/spfilejyzhao.ora'
ORA-17503: ksfdopn:2 Failed to open file +DATA1/jyzhao/spfilejyzhao.ora
ORA-15056: additional error message
ORA-17503: ksfdopn:2 Failed to open file +DATA1/jyzhao/spfilejyzhao.ora
ORA-15173: entry 'spfilejyzhao.ora' does not exist in directory 'jyzhao'
ORA-06512: at line 4
恢复方法:
1)vi编辑初始化参数文件,指定db_name, control_files,compatible
vi /u01/app/oracle/product/11.2.0/db_1/dbs/init86.ora
db_name='jyzhao'
control_files = '+DATA1/JYZHAO/CONTROLFILE/Current.260.874084673'
compatible ='11.2.0.4'
2)启动到mount状态
SQL> startup mount pfile='/u01/app/oracle/product/11.2.0/db_1/dbs/init86.ora'
3)RMAN恢复spfile文件
RMAN> restore spfile from autobackup;
4)关库重新用恢复的spfile文件启动数据库
SQL> shutdown abort
SQL> startup
1.4 参数文件,数据文件丢失或损坏
启动数据库报错:
综合考虑1.3,1.2,1.1的内容。
恢复方法:
先按照1.3恢复参数文件,再根据实际情况选择1.1或1.2。
1.5 临时文件丢失或损坏
重启库之后自动重建临时文件并成功open数据库。
可以在alert.log看到如下一段日志:
[8440] Successfully onlined Undo Tablespace 2.
Undo initialization finished serial:0 start:348324004 end:348324254 diff:250 (2 seconds)
Verifying file header compatibility for 11g tablespace encryption..
Verifying 11g file header compatibility for tablespace encryption completed
SMON: enabling tx recovery
Re-creating tempfile +DATA1/jyzhao/tempfile/temp.264.874084679 as +DATA1/jyzhao/tempfile/temp.264.887107953
Database Characterset is ZHS16GBK
No Resource Manager plan active
Archived Log entry 1162 added for thread 1 sequence 883 ID 0x93779c13 dest 1:
ARC1: Standby redo logfile selected for thread 1 sequence 883 for destination LOG_ARCHIVE_DEST_2
replication_dependency_tracking turned off (no async multimaster replication found)
Starting background process QMNC
Fri Aug 07 10:52:33 2015
QMNC started with pid=38, OS id=8605
ARC3: Archival started
ARC0: STARTING ARCH PROCESSES COMPLETE
Completed: ALTER DATABASE OPEN
Oracle Recovery 01 - 常规恢复之完全恢复的更多相关文章
- Oracle Recovery 02 - 常规恢复之不完全恢复
背景:这里提到的常规恢复指的是数据库有完备可用的RMAN物理备份. 实验环境:RHEL6.4 + Oracle 11.2.0.4 单实例. 二.常规恢复之不完全恢复:部分数据丢失 2.1 重做日志文件 ...
- 本文将详细介绍oracle 10g OEM常规错误
本文将详细介绍oracle 10g OEM常规错误-------Unknown host specified解决方法,需要了解的朋友可以参考下 详细出处参考:http://www.jb51.net/a ...
- Oracle 基于 RMAN 的不完全恢复(incomplete recovery by RMAN)
Oracle 数据库可以实现数据库不完全恢复与完全恢复.完全恢复是将数据库恢复到最新时刻,也就是无损恢复,保证数据库无丢失的恢复.而不完全恢复则是根据需要特意将数据库恢复到某个过去的特定时间点或特定的 ...
- Oracle RMAN 备份及不完全恢复(删除archievelog)
RMAN备份命令 backup Database format='/home/oracle/backup/bak_full_%U_%T' tag='bak_full'; sql 'alter syst ...
- Oracle实用-01:绑定变量
数据库虽然在学校系统学习过,但是在工作中真正使用起来收获又是不一样的,今天起打算将项目中使用到的技术再分享出来,不以书本的顺序,只从碰到的问题为顺序. 虽然不是纯粹的数据库工程师,但是每个程序员总免不 ...
- Oracle笔记 #01# 简单分页
rownum是Oracle为查询结果分配的有序编号(总是从1~n).言下之意,rownum字段本来并不存在于表中,而是经查询后才分配的. 举一个例子: SELECT rownum, name, pri ...
- Oracle recovery manager failed to restore
解决办法: 1:清理过期失效的备份, 2:增加recovery_file_dest_size参数值即可: SQL> show parameter db_recover NAME ...
- Oracle基础 01 表空间 tablespace
--查看表空间 select * from dba_tablespaces; select * from v$tablespace; select * from dba_data_files; --查 ...
- Oracle使用中的常规操作总结
写一篇在使用Oracle过程中一些常用的操作,以便于忘记的时候查看 一.创建用户和给用户赋予权限 create user 用户名 identified by 密码; --12c一下版本 create ...
随机推荐
- JVM垃圾收集器
JVM中垃圾的回收由垃圾收集器进行,随着JDK的不断升级,垃圾收集器也开发出了各种版本,垃圾收集器不断优化的动力,就是为了实现更短的停顿. 下面是7种不同的分代收集器,如果两个收集器之间有连线,则表示 ...
- python学习笔记--基础概要
1.python的int类型没有大小限制(或者说只受机器内存限制),str类型用单引号或者双引号都行,只要对称就可以了.(注意固定性) 2.使用[]表示存取字符串等序列的某一项(索引从0开始) 3.类 ...
- 安装mysql
查看已安装的mysql,并删除它们 rpm -qa|grep -i mysql rpm -e --nodeps filename 如果重装mysql,查找安装mysql产生的文件,并删除它们 find ...
- ENode框架Conference案例分析系列之 - 订单处理减库存的设计
前言 前面的文章,我介绍了Conference案例的业务.上下文划分.领域模型.架构,以及代码整体流程.接下来想针对案例中一些重要的场景,分别做进一步的分析.本文想先介绍一下Conference案例的 ...
- EF联合查询,如何设置条件过滤从表数据
最近在使用EF进行联合查询过程中,遇到了一件不开心的事情. 已禁用懒加载 var post = await _repository.GetMyPostById(blogId, postId).AsNo ...
- 剑指Offer面试题:28.连续子数组的最大和
一.题目:连续子数组的最大和 题目:输入一个整型数组,数组里有正数也有负数.数组中一个或连续的多个整数组成一个子数组.求所有子数组的和的最大值.要求时间复杂度为O(n).例如输入的数组为{1,-2,3 ...
- angularjs 指令详解 - template, restrict, replace
通过指令机制,angularjs 提供了一个强大的扩展系统,我们可以通过自定义指令来扩展自己的指令系统. 怎样定义自己的指令呢? 我们通过 Bootstrap UI来学习吧.这个项目使用 angula ...
- 【java并发编程实战】-----线程基本概念
学习Java并发已经有一个多月了,感觉有些东西学习一会儿了就会忘记,做了一些笔记但是不系统,对于Java并发这么大的"系统",需要自己好好总结.整理才能征服它.希望同仁们一起来学习 ...
- AngularJs项目文件以及文件夹结构
app/ ----- Libs/ // references for all libs ---------- angular.js ---------- angular-route.js ----- ...
- JS、JQuery和ExtJs的跨域处理
1.什么是跨域?跨域,JavaScript出于安全方面的考虑,不允许跨域调用其他页面的对象.简单地理解就是因为JavaScript同源策略的限制,a.com 域名下的js无法操作b.com或是c.a. ...