使用RMAN对数据文件进行恢复
(1)备份数据库
在使用RMAN进行数据库恢复之前,先用RMAN进行全库备份
[oracle@redhat6 ~]$ rman target / Recovery Manager: Release 11.2.0.1.0 - Production on Wed May 16 14:32:54 2018 Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved. connected to target database: ORCL (DBID=1486787650) RMAN> backup database; Starting backup at 16-MAY-18
using channel ORA_DISK_1
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00001 name=/u01/app/oracle/oradata/orcl/system01.dbf
input datafile file number=00002 name=/u01/app/oracle/oradata/orcl/sysaux01.dbf
input datafile file number=00003 name=/u01/app/oracle/oradata/orcl/undotbs01.dbf
input datafile file number=00005 name=/u01/app/oracle/oradata/orcl/example01.dbf
input datafile file number=00009 name=/u01/app/oracle/oradata/orcl/mark.bdf
input datafile file number=00011 name=/u01/app/oracle/oradata/orcl/tbs01.bdf
input datafile file number=00012 name=/u01/app/oracle/oradata/orcl/tbs03.dbf
input datafile file number=00013 name=/u01/app/oracle/oradata/orcl/tbs04.dbf
input datafile file number=00004 name=/u01/app/oracle/oradata/orcl/users01.dbf
channel ORA_DISK_1: starting piece 1 at 16-MAY-18
channel ORA_DISK_1: finished piece 1 at 16-MAY-18
piece handle=/u01/app/oracle/product/11.2.0/db_1/dbs/01t31soh_1_1 tag=TAG20180516T144121 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:02:33
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00008 name=/u01/app/oracle/oradata/orcl/tbs_32k.dbf
channel ORA_DISK_1: starting piece 1 at 16-MAY-18
channel ORA_DISK_1: finished piece 1 at 16-MAY-18
piece handle=/u01/app/oracle/product/11.2.0/db_1/dbs/02t31sta_1_1 tag=TAG20180516T144121 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
including current control file in backup set
including current SPFILE in backup set
channel ORA_DISK_1: starting piece 1 at 16-MAY-18
channel ORA_DISK_1: finished piece 1 at 16-MAY-18
piece handle=/u01/app/oracle/product/11.2.0/db_1/dbs/03t31stc_1_1 tag=TAG20180516T144121 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:01
Finished backup at 16-MAY-18
(2)删除数据文件
查看数据库的数据文件信息:
select t."NAME",
d."NAME",
d."FILE#"
from v$tablespace t,
v$datafile d
where t."TS#" = d."TS#"
order by t.ts#; NAME NAME FILE#
------------------------------ -------------------------------------------------------------------------------- ----------
SYSTEM /u01/app/oracle/oradata/orcl/system01.dbf 1
SYSAUX /u01/app/oracle/oradata/orcl/sysaux01.dbf 2
UNDOTBS1 /u01/app/oracle/oradata/orcl/undotbs01.dbf 3
USERS /u01/app/oracle/oradata/orcl/users01.dbf 4
EXAMPLE /u01/app/oracle/oradata/orcl/example01.dbf 5
TBS_32K /u01/app/oracle/oradata/orcl/tbs_32k.dbf 8
MARK /u01/app/oracle/oradata/orcl/mark.bdf 9
TBS01 /u01/app/oracle/oradata/orcl/tbs01.bdf 11
TBS03 /u01/app/oracle/oradata/orcl/tbs03.dbf 12
TBS04 /u01/app/oracle/oradata/orcl/tbs04.dbf 13
10 rows selected
删除一个数据文件,这里把文件编号为13的数据文件给删除:
[oracle@redhat6 ~]$ rm -f /u01/app/oracle/oradata/orcl/tbs04.dbf
(3)恢复数据文件
(3.1)使用list failure查看失败操作
RMAN> list failure; List of Database Failures
========================= Failure ID Priority Status Time Detected Summary
---------- -------- --------- ------------- -------
8 HIGH OPEN 16-MAY-18 One or more non-system datafiles need media recovery
42 HIGH OPEN 13-DEC-17 One or more non-system datafiles are missing
(3.2)使用RMAN建议来恢复丢失的文件
RMAN> advise failure
2> ; List of Database Failures
========================= Failure ID Priority Status Time Detected Summary
---------- -------- --------- ------------- -------
8 HIGH OPEN 16-MAY-18 One or more non-system datafiles need media recovery
42 HIGH OPEN 13-DEC-17 One or more non-system datafiles are missing analyzing automatic repair options; this may take some time
using channel ORA_DISK_1
analyzing automatic repair options complete Mandatory Manual Actions
========================
no manual actions available Optional Manual Actions
=======================
1. If you restored the wrong version of data file /u01/app/oracle/oradata/orcl/tbs04.dbf, then replace it with the correct one
2. If file /u01/app/oracle/oradata/orcl/tbs04.dbf was unintentionally renamed or moved, restore it Automated Repair Options
========================
Option Repair Description
------ ------------------
1 Restore and recover datafile 13; Recover datafile 13
Strategy: The repair includes complete media recovery with no data loss
Repair script: /u01/app/oracle/diag/rdbms/orcl/orcl/hm/reco_1931299378.hm
最后一行给出了恢复的脚本,查看脚本
[oracle@redhat6 ~]$ more /u01/app/oracle/diag/rdbms/orcl/orcl/hm/reco_1931299378.hm
# restore and recover datafile
sql 'alter database datafile 13 offline';
restore datafile 13;
recover datafile 13;
sql 'alter database datafile 13 online';
# recover datafile
sql 'alter database datafile 13 offline';
recover datafile 13;
sql 'alter database datafile 13 online';
根据脚本,执行修复和恢复
RMAN> sql 'alter database datafile 13 offline'; sql statement: alter database datafile 13 offline RMAN> restore datafile ;
Starting restore at 16-MAY-18
using channel ORA_DISK_1 channel ORA_DISK_1: starting datafile backup set restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_DISK_1: restoring datafile 00013 to /u01/app/oracle/oradata/orcl/tbs04.dbf
channel ORA_DISK_1: reading from backup piece /u01/app/oracle/product/11.2.0/db_1/dbs/01t31soh_1_1
channel ORA_DISK_1: piece handle=/u01/app/oracle/product/11.2.0/db_1/dbs/01t31soh_1_1 tag=TAG20180516T144121
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:03
Finished restore at 16-MAY-18 RMAN> recover datafile ; Starting recover at 16-MAY-18
using channel ORA_DISK_1 starting media recovery
media recovery complete, elapsed time: 00:00:00 Finished recover at 16-MAY-18 RMAN> sql 'alter database datafile 13 online'; sql statement: alter database datafile 13 online
(4)重启数据库,确认无异常
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started. Total System Global Area 730714112 bytes
Fixed Size 2216944 bytes
Variable Size 314575888 bytes
Database Buffers 411041792 bytes
Redo Buffers 2879488 bytes
Database mounted.
Database opened.
完结。
使用RMAN对数据文件进行恢复的更多相关文章
- RMAN数据库恢复 之归档模式有(无)备份-丢失数据文件的恢复
1.归档模式有备份,丢失数据文件的恢复归档模式有备份,不管丢失什么数据文件,直接在RMAN下RESTOER--->RECOVER--->OPEN即可. RMAN> STARUP MO ...
- [20171225]没有备份数据文件的恢复.txt
[20171225]没有备份数据文件的恢复.txt --//别人问的问题,增加了数据文件没有备份,如何恢复,实际上很简单,因为当前控制文件有记录建立时间只要从建立数据文件开始的--//归档日志都存在恢 ...
- RMAN数据库恢复之丢失数据文件的恢复
删除某一数据文件:SQL> HOST del D:\app\Administrator\oradata\orcl\USERS01.dbf 启动数据库,提示丢失数据文件4,此时数据库处理MOUNT ...
- oracle11g 数据文件误删恢复(无备份)
OS: Oracle Linux Server release 5.7 DB: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - ...
- RMAN - "丢失控制文件的恢复"
OS: Oracle Linux Server release 5.7 DB: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - ...
- 记数据库数据文件损坏恢复ORA-00376+ORA-01110
现象:业务平台无法登陆,日志报错为ORACLE的错误. 查看oracle日志的报错, ORA-00376: file 5 cannot be read at this time ORA-01110: ...
- 误删除innodb ibdata数据文件-之恢复
今天在群里看到有人说不熟悉innodb把ibdata(数据文件)和ib_logfile(事务日志)文件误删除了.不知道怎么解决.当时我也不知道怎么办.后来查阅相关资料.终找到解决方法.其实恢复也挺简单 ...
- Rman将数据文件恢复到不同的路径
RMAN> startup nomount connected to target database (not started)Oracle instance started Total Sys ...
- oracle 备份恢复篇(四)---rman 单个数据文件
一,环境背景
随机推荐
- node.js异步编程解决方案之Promise用法
node.js异步编程解决方案之Promise var dbBase = require('../db/db_base'); var school_info_db = require('../db/s ...
- Quartz使用及注意事项
Quartz使用及注意事项 前提:目前由于公司业务决定,大量使用Quartz,每天固定的时间点执行相应的业务逻辑,,几十个时间点应该是有的,某一个时间点如果没有执行带来的问题是巨大的.Quartz的稳 ...
- 《Unity Shader入门精要》读书笔记(1)
主要是对第二章的整理 渲染流水线:由一个三维场景出发,生成(渲染)一张二维图像. 渲染流程:应用阶段.几何阶段.光栅化阶段. 应用阶段: 1. 把数据加载到显存中 渲染所需数据从硬盘,到内存,再到显存 ...
- Python爬虫之requests模块(2)
一.今日内容 session处理cookie proxies参数设置请求代理ip 基于线程池的数据爬取 二.回顾 xpath的解析流程 bs4的解析流程 常用xpath表达式 常用bs4解析方法 三. ...
- 关于li标签行内显示的问题
在我们实现导航栏的时候,经常要用到ul标签. 通常,我们是通过给li标签设置display:inline-block来使其在一行里显示,但是这个时候出现了一个很头疼的问题. 我们先上代码. <! ...
- SharePoint 2013 - Client OM
1. 向 executeQueryAsync 中传递参数可以使用以下两种方式,也可以参考这篇文章: var mySuccessCallBack = Function.createCallback(on ...
- CSS3中的变形与动画(一)
CSS3变形篇 旋转rotate() 旋转rotate()函数通过指定的角度参数使元素相对原点进行旋转.它主要在二维空间内进行操作,设置一个角度值,用来指定旋转的幅度.如果这个值为正值,元素相对原点中 ...
- wxpython 对话框
. 消息对话框(wx.MessageDialog) 消息对话框 与用户通信最基本的机制是wx.MessageDialog,它是一个简单的提示框. wx.MessageDialog可用作一个简单的OK框 ...
- attention
attention: 时序的刻画 attention 在recommendation 中的应用: 年龄的增长, 对于商品的喜好 Dynamic attention deeo model:
- 常见HTTP状态200,304,403,404,503
下面提供 HTTP 状态码的完整列表.您也可以查看 W3C官方HTTP 状态码说明(英文). 1xx(临时响应) 表示临时响应并需要请求者继续执行操作的状态码. 100(继续) 请求者应当继续提出请求 ...