RMAN数据库恢复之恢复表空间和数据文件

执行表空间或数据文件恢复时,数据库既可以是MOUNT状态,也可以是OPEN状态。
1、恢复表空间
在执行恢复之前,如果被操作的表空间未处理OFFLINE状态,必须首先通过ALTER TABLESPACE…OFFLINE语句将其置为脱机。然后再RESTORE-->RECOVER--->ONLINE即可。

RMAN> SQL ‘ALTER TABLESPACE USERS OFFLINE IMMEDIATE‘;

在恢复目录中注册的数据库的新原型
正在启动全部恢复目录的 resync
完成全部 resync
sql 语句: ALTER TABLESPACE USERS OFFLINE IMMEDIATE

RMAN> RESTORE TABLESPACE USERS;

启动 restore 于 21-12月-14
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: SID=172 设备类型=DISK

创建数据文件, 文件号 = 7 名称 = D:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS02.DBF
通道 ORA_DISK_1: 正在开始还原数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集还原的数据文件
通道 ORA_DISK_1: 将数据文件 00004 还原到 D:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF
通道 ORA_DISK_1: 正在读取备份片段 D:\RMAN_BAK\FUL_BAK_20141221
通道 ORA_DISK_1: 段句柄 = D:\RMAN_BAK\FUL_BAK_20141221 标记 = TAG20141221T134059
通道 ORA_DISK_1: 已还原备份片段 1
通道 ORA_DISK_1: 还原完成, 用时: 00:00:04
完成 restore 于 21-12月-14

RMAN> RECOVER TABLESPACE USERS;

启动 recover 于 21-12月-14
使用通道 ORA_DISK_1

正在开始介质的恢复

线程 1 序列 22 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_22_B9FPC0GR_.ARC 存在于磁盘上
线程 1 序列 23 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_23_B9FPC4PT_.ARC 存在于磁盘上
线程 1 序列 24 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_24_B9FPC37H_.ARC 存在于磁盘上
线程 1 序列 25 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_25_B9FPC3VQ_.ARC 存在于磁盘上
归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_22_B9FPC0GR_.ARC 线程=1 序列=22
归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_23_B9FPC4PT_.ARC 线程=1 序列=23
归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_24_B9FPC37H_.ARC 线程=1 序列=24
归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_25_B9FPC3VQ_.ARC 线程=1 序列=25
介质恢复完成, 用时: 00:00:04
完成 recover 于 21-12月-14

RMAN> SQL ‘ALTER TABLESPACE USERS ONLINE‘;

sql 语句: ALTER TABLESPACE USERS ONLINE

2、恢复数据文件
恢复表空间其实就是恢复其所对应的数据文件。一个表空间可能对应多个数据文件。因此恢复文件操作与恢复表空间类似。
将数据文件置为OFFLINE,再RESTORE,再RECOVER,然后ONLINE即可。

SQL> SELECT FILE#,STATUS,NAME FROM V$DATAFILE;
FILE# STATUS NAME
---------- ------- ------------------------------------------------
1 SYSTEM D:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSTEM01.DBF
2 ONLINE D:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSAUX01.DBF
3 ONLINE D:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS01.DBF
4 ONLINE D:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF
5 ONLINE D:\APP\ADMINISTRATOR\ORADATA\ORCL\EXAMPLE01.DBF
6 ONLINE D:\RMAN_CATALOG\RMANTBS01.DBF
7 ONLINE D:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS02.DBF
7 rows selected

=============================
oracle数据库告警日志文件路径:
D:\app\Administrator\diag\rdbms\orcl\orcl\trace
=========================
恢复数据文件D:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF。
RMAN> SQL ‘ALTER DATABASE DATAFILE 4 OFFLINE‘;

sql 语句: ALTER DATABASE DATAFILE 4 OFFLINE

RMAN> RESTORE DATAFILE 4;

启动 restore 于 22-12月-14
使用通道 ORA_DISK_1

通道 ORA_DISK_1: 正在开始还原数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集还原的数据文件
通道 ORA_DISK_1: 将数据文件 00004 还原到 D:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF
通道 ORA_DISK_1: 正在读取备份片段 D:\RMAN_BAK\FUL_BAK_20141221
通道 ORA_DISK_1: 段句柄 = D:\RMAN_BAK\FUL_BAK_20141221 标记 = TAG20141221T134059
通道 ORA_DISK_1: 已还原备份片段 1
通道 ORA_DISK_1: 还原完成, 用时: 00:00:02
完成 restore 于 22-12月-14

RMAN> RECOVER DATAFILE 4;

启动 recover 于 22-12月-14
使用通道 ORA_DISK_1

正在开始介质的恢复

线程 1 序列 22 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_22_B9FPC0GR_.ARC 存在于磁盘上
线程 1 序列 23 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_23_B9FPC4PT_.ARC 存在于磁盘上
线程 1 序列 24 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_24_B9FPC37H_.ARC 存在于磁盘上
线程 1 序列 25 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_25_B9FPC3VQ_.ARC 存在于磁盘上
线程 1 序列 1 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_22\O1_MF_1_1_B9FWSYH4_.ARC 存在于磁盘上
线程 1 序列 2 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_22\O1_MF_1_2_B9FXKQ7X_.ARC 存在于磁盘上
线程 1 序列 3 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_22\O1_MF_1_3_B9FXPFMP_.ARC 存在于磁盘上
线程 1 序列 4 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_22\O1_MF_1_4_B9JDBDJ6_.ARC 存在于磁盘上
线程 1 序列 5 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_22\O1_MF_1_5_B9JDBC8L_.ARC 存在于磁盘上
线程 1 序列 6 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_22\O1_MF_1_6_B9JDBCNC_.ARC 存在于磁盘上
线程 1 序列 7 的归档日志已作为文件 D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_22\O1_MF_1_7_B9JDBD18_.ARC 存在于磁盘上
归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_22_B9FPC0GR_.ARC 线程=1 序列=22
归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_23_B9FPC4PT_.ARC 线程=1 序列=23
归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_24_B9FPC37H_.ARC 线程=1 序列=24
归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_21\O1_MF_1_25_B9FPC3VQ_.ARC 线程=1 序列=25
归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_22\O1_MF_1_1_B9FWSYH4_.ARC 线程=1 序列=1
归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_22\O1_MF_1_2_B9FXKQ7X_.ARC 线程=1 序列=2
归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_22\O1_MF_1_3_B9FXPFMP_.ARC 线程=1 序列=3
归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_22\O1_MF_1_4_B9JDBDJ6_.ARC 线程=1 序列=4
归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_22\O1_MF_1_5_B9JDBC8L_.ARC 线程=1 序列=5
归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_22\O1_MF_1_6_B9JDBCNC_.ARC 线程=1 序列=6
归档日志文件名=D:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2014_12_22\O1_MF_1_7_B9JDBD18_.ARC 线程=1 序列=7
介质恢复完成, 用时: 00:00:05
完成 recover 于 22-12月-14

RMAN> SQL ‘ALTER DATABASE DATAFILE 4 ONLINE‘;

sql 语句: ALTER DATABASE DATAFILE 4 ONLINE

=============================
说明:执行RESTORE/RECOVER操作指定数据文件时,既可以直接指定数据文件的详细路径,也可以以数据文件序号代替。
如果由于磁盘损坏导致数据文件无法访问,恢复时可能需要恢复到其它路径,此时必须给数据文件指定新的路径:

RMAN> RUN{SET NEWNAME FOR DATAFILE 4 TO ‘E:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF‘;
RESTORE DATAFILE 4;
SWITCH DATAFILE 4;
RECOVER DATAFILE 4;
}
时间: 2024-10-16 18:38:43

RMAN数据库恢复之恢复表空间和数据文件的相关文章

管理表空间和数据文件

前言:管理表空间和数据文件   在 Oracle数据库中,表空间中的数据存在于磁盘的数据文件中,所以对表空间的管理操作与对数据文件的管理操作密切相关.通过使用表空间,可以有效的部署不同类型的数据,加强数据管理,从而提高数据库的运行性能. 通过阅读本章节内容,可以: 理解表空间和数据文件的关系 掌握如何创建表空间 掌握如何维护表空间和数据文件 了解如何管理撤销表空间 掌握如何管理临时表空间 一:表空间与数据文件的关系 在Oracle 数据库中,表空间与数据文件之间的关系非常密切,这二者 相互依存.

ORACLE RMAN备份及还原 RMAN可以进行增量备份:数据库,表空间,数据文件

ORACLE RMAN备份及还原 RMAN可以进行增量备份:数据库,表空间,数据文件 只有使用过的block可以被备份成backup set 表空间与数据文件对应关系:dba_data_files / v$datafile_header 在noarchivelog模式下,可以使用RMAN备份read-only和offline的表空间 ORACLE RMAN停机备份: 备份 RMAN连接上ORACLE,WINDOWS下在命令模式下 RMAN TARGET / 连接本地数据库用的是本地认证模式.RM

如何查看Oracle数据库表空间大小(空闲、已使用),是否要增加表空间的数据文件

要查看Oracle数据库表空间大小,是否需要增加表空间的数据文件,在数据库管理中,磁盘空间不足是DBA都会遇到的问题,问题比较常见. --1.查看表空间已经使用的百分比 Sql代码 select   a.tablespace_name,a.bytes/1024/1024 "Sum MB",(a.bytes-b.bytes)/1024/1024   "used MB",b.bytes/1024/1024 "free MB",round(((a.by

十四、oracle 数据库管理--管理表空间和数据文件

一.概念表空间是数据库的逻辑组成部分.从物理上讲,数据库数据存放在数据文件中:从逻辑上讲,数据库数据则是存放在表空间中,表空间由一个或多个数据文件组成. 二.数据库的逻辑结构oracle中逻辑结构包括表空间.段.区和块.说明一下数据库由表空间构成,而表空间又是由段构成,而段又是由区构成,而区又是由oracle块构成的这样的一种结构,可以提高数据库的效率. 三.表空间1.概念表空间用于从逻辑上组织数据库的数据.数据库逻辑上是由一个或是多个表空间组成的.通过表空间可以达到以下作用:1).控制数据库占

表空间和数据文件·

表空间和数据文件 表空间是数据库的逻辑组成部分,从物理上讲,数据库数据是存在文件中,从逻辑上讲,数据库是存在表空间中的,表空间由一个或多个数据文件组成的. Oracle逻辑结构包括表空间,段,块 Oracle可以包括很多的表空间.实际上表空间是由数据文件构成的. 1)    通过表空间可以控制数据库占用的磁盘空间 2)    Dba可以讲不同的数据类型部署到不同 的位置,有利于提高IO性能,同时有利于备份和恢复等管理操作. 建立表空间使用 create  tablespace create ta

oracle 数据库管理--管理表空间和数据文件

一.概念表空间是数据库的逻辑组成部分.从物理上讲,数据库数据存放在数据文件中:从逻辑上讲,数据库数据则是存放在表空间中,表空间由一个或多个数据文件组成. 二.数据库的逻辑结构oracle中逻辑结构包括表空间.段.区和块.说明一下数据库由表空间构成,而表空间又是由段构成,而段又是由区构成,而区又是由oracle块构成的这样的一种结构,可以提高数据库的效率. 三.表空间1.概念表空间用于从逻辑上组织数据库的数据.数据库逻辑上是由一个或是多个表空间组成的.通过表空间可以达到以下作用:1).控制数据库占

管理表空间和数据文件<六>

数据库管理 -- 管理表空间和数据文件 ? 介绍 表空间是数据库的逻辑组成部分.从物理上讲,数据库数据存放在数据文件中:从逻辑上讲,数据库则是存放在表空间中,表 空间由一个或多个数据文件组成. 数据库的逻辑结构 ? 介绍 oracle 中逻辑结构包括表空间.段.区和块. 说明一下数据库由表空间构成,而表空间又是由段构成,而段又是由区构成,而区又是由 oracle 块构成的这样的一种结构,可 以提高数据库的效率. 为了让大家明白,我们画图说明逻辑关系:看图: 表空间 ? 介绍 表空间用于从逻辑上组

Oracle 表空间与数据文件

一.概念 表空间:是一个或多个数据文件的逻辑集合 表空间逻辑存储对象:永久段-->如表与索引 临时段-->如临时表数据与排序段                          回滚段-->用于事物回滚或闪回内存的撤销数据 表空间分类:系统表空间(system.sysaux),非系统表空间 一个表空间至少包含一个数据文件,一个数据文件只能属于一个表空间. 不可或缺的几个表空间: SYSTEM --->字典表空间,不能被损坏 UNDO --->dml,dql把数据快照到此,数据

ORACLE - 管理表空间和数据文件

ORACLE表空间是一个逻辑分区,一个数据文件只能属于一个表空间,一个表空间可以拥有多个数据文件. 一般情况下,如果一个实例分配给多个应用使用,需要创建不同的表空间,每个用户使用自己的表空间. 一.表空间的创建与授权 首先查看表空间的使用情况: select tablespace_name,sum(bytes)/1024/1024 as MB from dba_data_files group by tablespace_name; ---剩余容量(在固定大小的情况下) select table