常用的一些rman备份恢复命令(一)

2014-11-24 08:53:40 · 作者: · 浏览: 6
常用的一些rman备份恢复命令
Sql代码
Oracle的官方文档中有rman命令的比较完整的说明,我们可以参考。下面是一些常用的命令的使用例子:
www.2cto.com
Rman常用命令:
一、RMAN设置
1.显示RMAN默认配置
Rman中可以利用show命令来显示当前的配置参数。例如,通过SHOW ALL显示当前所有的配置。
RMAN> show all;
RMAN 配置参数为:
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 3 DAYS;
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'd:/backup/%F';
CONFIGURE DEVICE TYPE DISK PARALLELISM 1; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO 'F:\ORAHOME1\DATABASE\SNCFJSSWEB.ORA'; #
default
RMAN>
注:配置项后面跟了# default的表示该项仍是初始配置,未被修改过。
www.2cto.com
该命令使用也相当灵活,其后跟上不同的类型的配置参数,即可以显示不同类型的配置,如:
SHOW CHANNEL;
SHOW DEVICE TYPE;
SHOW DEFAULT DEVICE TYPE;
2.建立恢复目录:
第一步,在目录 数据库中创建恢复目录所用表空间:
SQL> create tablespace rman_ts datafile 'd:\Oracle\oradata\rman\rman_ts.dbf' size 20M;
第二步,在目录数据库中创建RMAN 用户并授权:
SQL> create user rman identified by rman default tablespace rman_ts temporary tablespace temp quota unlimited on rman_ts;
用户已创建。
SQL> grant recovery_catalog_owner connect, resource to rman ;
授权成功。
第三步,在目录数据库中创建恢复目录
C:\>rman catalog rman/rman
恢复管理器:版本8.1.6.0.0 - Production
RMAN-06008:连接到恢复目录数据库
RMAN-06428:未安装恢复目录
RMAN>create catalog tablespace rman_ts;
RMAN-06431:恢复目录已创建
2. 启动RMAN
2.1.使用不带恢复目录的RMAN
设置目标数据库的 Oracle_SID ,执行:
oracle@myserve:~$ rman target /
2.2.使用带恢复目录的RMAN
oracle@myserve:~$ rman target / catalog rman/rman
2.3.在恢复目录中注册数据库:
RMAN> register database;
.注销目标数据库
为了能注销数据库,需要获得数据库的标识码(DB_ID)和数据库键值(DB_KEY)。其中连接目标数据库时将会获得DB_ID
连接到目标数据库,查询db表:
SQL> select * from db;
DB_KEY DB_ID CURR_DBINC_KEY
---------- ---------- --------------
1 3021445076 2
SQL> execute dbms_rc vcat.unregisterdatabase(1,3021445076);
PL/SQL 过程已成功完成。
3.使用rman备份数据库:
在指定备份片的文件名时可以使用以下匹配符:
%c:当生成多重备份时,用于指定备份片的副本号
%d:用于指定数据库名
%e:用于指定归档日志的序列号
%p:用于指定在备份集内备份片的编号
%s:用于指定备份集的编号
%n:用于指定表空间的名称
%f:用于指定绝对文件号
为了防止建立备份集错误匹配符%s是必顺的;如果要建立多个备份片文件,则匹配符%p是必顺的;如果要建立多个备份片副本,则匹配符%c是必顺的.
完全数据库备份集 backup database
一至性备份:
RMAN>shutdown immediate
RMAN>startup mount
RMAN>backup database format=’/opt/oracle/rmanbak/%d_%s.dbf’;
RMAN>alter database open;
RMAN>sql ‘alter system archive log current’
非一至性备份(在open状态下):
RMAN>backup database format=’/opt/oracle/rmanbak/%d_%s.dbf’;
RMAN>sql ‘alter system archive log current’;
免除表空间:
RMAN>configure exclude for tablespace ts_name; //设定在备份数据库的时候排除ts_name;
RMAN>backup database format=’/opt/oracle/rmanbak/%d_%s.dbf’;
RMAN>sql ‘alter system archive log current’;
查看数据库备份:
RMAN>list backup of database;
表空间备份集(只适用于archivelog):
RMAN>backup tablespace ts_name format=’/opt/oracle/rmanbak/%n_%s.pdf’;
查看表空间备份:
RMAN>list backup of tablespace taplespace_name;
数据文件备份集
查询表空间对应的数据文件及其序号
Select file_n