使用RMAN恢复全库、表空间、数据文件的方法总结

来源:互联网 发布:超市app软件 编辑:程序博客网 时间:2024/05/17 07:22

废话一句,恢复的前提是要有备份;所以说备份很重要。

对数据库进行完全介质恢复

1、启动数据库到加载状态

RMAN> SHUTDOWN IMMEDIATE;
RMAN> STARTUP MOUNT;

2、执行恢复操作

RMAN> RESTORE DATABASE;
RMAN> RECOVER DATABASE DELETE ARCHIVELOGS SKIP TABLESPACE TEMP;
注意:DELETE ARCHIVELOGS和SKIP TABLESPACE两个参数是可选择的,作用如下: DELETE ARCHIVELOGS :表示RMAN将在完成恢复过程后自动删除那些在恢复过程中产生的归档日志文件,RMAN并不会删除restore命令之前的归档文件。 SKIP TABLESPACE :跳过指定表空间,比如临时表,当然临时表空间即使你不跳过它也不会恢复的。

3、打开数据库

RMAN> ALTER DATABASE OPEN;

注意:如果你的数据库并非处于归档模式,那么必须使用ALTER DATABASE OPEN RESETLOGS来打开数据 库,因为RMAN会认为在非归档模式下是一个不一致的备份,执行resetlogs之后,oracle将会把scn重新置为0。


对单个表空间使用RMAN进行恢复

1、启动数据库到加载状态

RMAN> SHUTDOWN IMMEDIATE;
RMAN> STARTUP MOUNT;

2 、进行恢复操作,在恢复之前,如果需要被恢复的表空间未处于脱机状态,需要通过alter tablespace name offline语句将其置为脱机

RMAN> SQL ¨ALTER TABLESPACE test OFFLINE IMMEDIATE¨;
RMAN> RESTORE TABLESPACE test;
RMAN> RECOVER TABLESPACE test;
RMAN> SQL ¨ALTER TABLESPACE test ONLINE¨;

3、打开数据库

RMAN> ALTER DATABASE OPEN; 


恢复单个数据文件--当然也可以是多个

事实上,恢复表空间实际就是恢复其所对应的数据文件(一个表空间可能对应多个数据文件),所以步骤与上相似。

1、启动数据库到加载状态

RMAN> SHUTDOWN IMMEDIATE;
RMAN> STARTUP MOUNT;

2 、进行恢复操作

在恢复之前,如果需要被恢复的表空间未处于脱机状态,需要通过alter tablespace name offline语句将其置为脱机,操作数据文件时可以直接指定数据文件,也可以以数据文件序号代替:
RMAN>SQL ¨ALTER DATABASE DATAFILE 6 OFFLINE;
RMAN> RESTORE DATAFILE 6;    这里也可以使用文件具体路径,如:RESTORE DATAFILE  /u01/oradata/bys1/blocktest.dbf
RMAN> RECOVER DATAFILE 6;
RMAN>SQL ¨ ALTER DATABASE DATAFILE 6 ONLINE;

3、打开数据库

RMAN> ALTER DATABASE OPEN; 


附:查file_id,file_name与TABLESPACE_NAME的对应可以使用如下语句:

SYS@bys1>select file_name,file_id,tablespace_name from dba_data_files order by file_id;
FILE_NAME                                   FILE_ID TABLESPACE_NAME
---------------------------------------- ---------- ------------------------------
/u01/oradata/bys1/system01.dbf                    1 SYSTEM
/u01/oradata/bys1/sysaux01.dbf                    2 SYSAUX
/u01/oradata/bys1/undotbs01.dbf                   3 UNDOTBS1
/u01/oradata/bys1/users01.dbf                     4 USERS
/u01/oradata/bys1/example01.dbf                   5 EXAMPLE
/u01/oradata/bys1/block.dbf                       6 BLOCK

或者如果需要查询TEMP文件,可以使用如下:

SYS@bys1>select file_name,file_id,tablespace_name from dba_data_files union all select file_name,file_id,tablespace_name from dba_temp_files order by file_id;
FILE_NAME                                   FILE_ID TABLESPACE_NAME
---------------------------------------- ---------- ------------------------------
/u01/oradata/bys1/system01.dbf                    1 SYSTEM
/u01/oradata/bys1/temp01.dbf                      1 TEMP
/u01/oradata/bys1/sysaux01.dbf                    2 SYSAUX
/u01/oradata/bys1/undotbs01.dbf                   3 UNDOTBS1
/u01/oradata/bys1/users01.dbf                     4 USERS
/u01/oradata/bys1/example01.dbf                   5 EXAMPLE
/u01/oradata/bys1/block.dbf                       6 BLOCK

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 注册消防工程师论坛 一级注册消防工程师教材 注册消防工程师报名 二级消防工程师考试科目 消防工程师报考条件二级 二级注册消防工程师报考条件 一级注册消防工程师论坛 二级消防工程师好考吗 一级注册消防工程师招聘 注册消防工程师难考吗 考一级消防工程师有用吗 消防工程师难度 一消防工程师 一级消防工程师考试难度 一级消防工程师好考吗 消防工程师待遇 注册消防工程师一级二级区别 一级注册消防工程师好考吗 注册消防工程师好不好考 一级消防工程师难度 二级注册消防工程师考试科目 二级消防考试时间 一级消防工程师招聘 陕西二级消防工程师报名时间 2017消防工程师考试时间 消防工程师代报名 消防技术综合能力 一级注册消防工程师报考条件 河北二级消防工程师报名时间 二级消防工程师报名条件 消防员考试报考条件 消防技术实务 一级注册消防工程师报名时间 消防安全工程师考试时间 消防注册工程师报考条件 2017一级消防工程师报名时间 二级消防考试科目 辽宁消防工程师报名时间 一级消防工程师免考条件 注册消防工程师考哪几门 注册消防工程师考试题型