您的位置:首页 > 其它

RMAN中常用的命令

2010-11-29 14:35 465 查看
1、连接到目标数据库(不用恢复目录数据库):

Rman nocatalog target sys/change_on_isntall@testdb

Rman catalog rman_user/rman_user@ora9rc target sys/change_on_install@testdb

2、SHOW命令:

显示rman配置: RMAN> show all;

3、REPORT命令:

1、RMAN> report schema 报告目标数据库的物理结构;

2、RMAN>report need backup days=3; 报告最近3天没有被备份的数据文件;

3、RMAN> report need backup days 3 tablespace users; 在USERS表空间上3天未备份的数据文件;

4、RMAN> report need backup incremental 3; 报告恢复数据文件需要的增量备份个数超过3次的数据文件;

5、RMAN> report need backup redundancy 2 database; 报告备份文件低于2份的所有数据文件;

RMAN>report need backup redundancy=2;

6、RMAN> report need backup recovery window of 6 days; 报告文件报表的恢复需要超过6天的归档日志的数据文件;

7、RMAN> report unrecoverable; 报告数据库所有不可恢复的数据文件;

8、RMAN> report obsolete redunndancy 2; 报告备份次数超过2次的陈旧备份;

9、RMAN>report obsolete; 报告丢弃的备份;

4、LIST命令:列出备份信息

1、列出数据文件备份集

RMAN> list backup 列出详细备份;

RMAN> list expired backup 列出过期备份;

RMAN> list backup of database; 列出所有数据文件的备份集;

RMAN> list backup of tablespace user01; 列出特定表空间的所有数据文件备份集;

2、RMAN> list backup of controlfile 列出控制文件备份集;

3、RMAN> list backup of archivelog all 列出归档日志备份集详细信息;

RMAN>list archivelog all;列出归档日志备份集简要信息

4、RMAN> list backup of spfile 列出SPFILE备份集;

5、RMAN> list copy of datafile 5 列出数据文件映像副本;

6、RMAN> list copy of controlfile 列出控制文件映像副本;

7、RMAN> list copy of archivelog all 列出归档日志映像副本;

8、RMAN> list incarnation of database 列出对应物/列出数据库副本;

9、RMAN>list backup summary; 概述可用的备份;

B表示backup

F表示FULL

A表示archive log

0 1表示incremental backup

S说明备份状态(AAVAILABLEX EXPIRED )

10、RMAN>list backup by file 按备份类型列出备份;

按照数据文件备份,归档日志备份,控制文件备份,服务器参数文件备份列出

5、CROSSCHECK命令:校验备份信息

1、RMAN> crosscheck backup 核对所有备份集;

2、RMAN> crosscheck backup of database 核对所有数据文件的备份集;

3、RMAN> crosscheck backup of tablespace users 核对特定表空间的备份集;

4、RMAN> crosscheck backup of datafile 4 核对特定数据文件的备份集;

5、RMAN> crosscheck backup of controlfile 核对控制文件的备份集;

6、RMAN> crosscheck backup of spfile 核对SPFILE的备份集;

7、RMAN> crosscheck backup of archivelog sequence 3 核对归档日志的备份集;

8、RMAN> crosscheck copy 核对所有映像副本;

9、RMAN> crosscheck copy of database 核对所有数据文件的映像副本;

10、RMAN> crosscheck copy of tablespace users 核对特定表空间的映像副本;

11、RMAN> crosscheck copy of datafile 6 核对特定数据文件的映像副本;

12、RMAN> crosscheck copy of archivelog sequence 4 核对归档日志的映像副本;

13、RMAN> crosscheck copy of controlfile 核对控制文件的映像副本;

14、RMAN> crosscheck backup tag='SAT_BACKUP';

15、RMAN> crosscheck backup completed after 'sysdate - 2'

16、RMAN> crosscheck backup completed between 'sysdate - 5' and 'sysdate -2 '

17、RMAN> crosscheck backup device type sBT;

18、RMAN> crosscheck archivelog all;

19、RMAN> crosscheck archivelog like '%ARC00012.001'

20、RMAN> crosscheck archivelog from sequence 12;

21、RMAN> crosscheck archivelog until sequence 522;

6、DELETE:删除备份

1、RMAN> delete obsolete; 删除陈旧备份;

2、RMAN> delete expired backup; 删除EXPIRED备份

3、RMAN> delete expired copy; 删除EXPIRED副本;

4、RMAN> delete backupset 19; 删除特定备份集;

5、RMAN> delete backuppiece ''d:/backup/DEMO_19.bak'' 删除特定备份片;

6、RMAN> delete backup 删除所有备份集;

7、RMAN> delete datafilecopy ''d:/backup/DEMO_19.bak'' 删除特定映像副本;

8、RMAN> delete copy 删除所有映像副本;

9、RMAN> delete archivelog all delete input;

RMAN> delete backupset 22 format = ''d:/backup/%u.bak'' delete input

在备份后删除输入对象;

10、RMAN> delete backupset id;

7、CHANGE命令:改变备份集的状态

1、RMAN> change backupset 22 unavailable 改变备份集状态;

2、RMAN> change datafilecopy ''d:/backup/demo_37.bak'' unavailable 改变映像副本状态;

3、RMAN> change backupset 156 keep forever logs 使备份集156永久保留;

4、RMAN> change backupset 198 keep until ''sysdate+60'' logs 使备份集198保留60天;

5、RMAN> change backupset 156 nokeep 免除备份集156的保留期限;

6、change backupset 117,118 delete;

7、change backuppiece 1304 delete;

8、change archivelog until logseq =544 delete;

8、CONFIGURE命令

1显示当前的配置信息

1.01 RMAN> show all;

1.02查询RMAN设置中非默认值:

SQL> select name,value from v$rman_configuration;

2.常用的configure选项

2.01保存策略(retention policy)

configure retention policy to recovery window of 3 days;

configure retention policy to redundancy 3;

configure retention policy clear;

2.02备份优化backup optimization

configure backup optimization on;

configure backup optimization off;

configure backup optimization clear;

2.03默认设备default device type

configure default device type to disk;

configure default device type to stb;

configure default device type clear;

2.04控制文件controlfile

configure controlfile autobackup on;

configure controlfile autobackup format for device type disk to '/cfs01/backup/conf/conf_%F';

configure controlfile autobackup clear;

configrue controlfile autobackup format for device type disk clear;

configrue snapshot controlfile name to '/cfs01/backup/snapcf/scontrofile.snp';

configrue snapshot controlfile name clear;

2.05并行数(通道数) device type disk|stb parallelism n;

configure device type disk|stb parallelism 2;

configure device type disk|stb clear;

configure channel device type disk format 'e/:rmanback_%U';

configure channel device type disk maxpiecesize 100m

configure channel device type disk rate 1200K

configure channel 1 device type disk format 'e/:rmanback_%U';

configure channel 1 device type disk maxpiecesize 100m

2.06生成备份副本datafile|archivelog backup copies

configure datafile backup copies for device type disk|stb to 3;

configure archivelog backup copies for device type disk|stb to 3;

configure datafile|archivelog backup copies for device type disk|stb clear

backup device type disk database

format '/disk1/backup/%U', '/disk2/backup/%U', '/disk3/backup/%U';

2.07排除选项exclude

configure exclude for tablespace 'users';

configrue exclude clear;

2.08备份集大小maxsetsize

configure maxsetsize to 1G|1000M|1000000K|unlimited;

configure maxsetsize clear;

2.09其它选项auxiliary

CONFIGURE AUXNAME FOR DATAFILE 1 TO '/oracle/auxfiles/aux_1.f';

CONFIGURE AUXNAME FOR DATAFILE 2 TO '/oracle/auxfiles/aux_2.f';

CONFIGURE AUXNAME FOR DATAFILE 3 TO '/oracle/auxfiles/aux_3.f';

CONFIGURE AUXNAME FOR DATAFILE 4 TO '/oracle/auxfiles/aux_4.f';

CONFIGURE AUXNAME FOR DATAFILE 1 CLEAR;

9、CATALOG命令 用于追加备份记录到RMAN资料库中。

1、RMAN> catalog datafilecopy ''d:/backup/user01.bak'';

RMAN>catalog controlfile ''d:/backup/demo.ctl'';

RMAN> catalog archivelog ''d:/backup/demo_25.bak'';

注册副本;

2、RMAN> catalog backuppiece ''d:/backup/demo_40.dbf'' 注册备份片;

3、RMAN> catalog start with ''d:/bak'' 注册特定目录的所有备份文件;

4、RMAN> change datafilecopy ''d:/bak/user01.bak'' uncatalog;

RMAN> change controlfilecopy ''d:/bak/demo.ctl'' uncatalog;

RMAN> change backuppiece ''d:/bak/demo_25.bak'' uncatalog;

注销备份记录

10、FORMAT字符串替代变量:

使用FORMAT参数时可使用的各种替换变量,如下:

%d:数据库名称;

%D:位于该月中的天数(DD);

%M:位于该年中的月份(MM);

%F:一个基于DBID唯一的名称,这个格式的形式为c-IIIIIIIIII-YYYYMMDD-QQ,其中IIIIIIIIII为该数据库的DBID,

YYYYMMDD为日期,QQ是一个1-256的序列;

%n:数据库名称,并且会在右侧用x字符进行填充,使其保持长度为8;

%u:是一个由备份集编号和建立时间压缩后组成的8字符名称。利用%u可以为每个备份集生成一个唯一的名称;

%p:表示备份集中备份片段的编号,从1开始编号;

%c:备份片的拷贝数(从1开始编号);

%U:是%u_%p_%c的简写形式,利用它可以为每一个备份片段(即磁盘文件)生成一个唯一名称,

这是最常用的命名方式;

%s:备份集的号;

%t:备份集时间戳;

%T:年月日格式(YYYYMMDD);s

注:如果在BACKUP命令中没有指定FORMAT选项,则RMAN默认使用%U为备份片段命名。

11、validate命令

1、validate命令验证备份集片是否能够被还原;

2、list backup summary;得到了备份集得主键ID如40,然后validate backupset 40;

12、恢复目录的记录删除

1. $Oracle_HOME/rdbms/admin/prgrmanc.sql脚本定期删除恢复目录中具有DELETED状态的记录

2.要删除旧的对应物记录incarnation.必须从DBINC表中删除这些对应物,

使用RC_DATABASE_INCARNATION视图来确定要删除的对应物。记录要删除的每个对应物的DBINC_KEY,

随后启动SQL*Plus,执行delete from dbinc where dbinc_key=2;

13、手工同步恢复目录:resync catalog;

14、在RMAN中存储脚本

1,连接到目标数据库和恢复目录

2,创建脚本

RMAN>create script. my_bk_script

2>{backup database plus archivelog;}

3,打印脚本

RMAN>print script. my_bk_script;

4,运行这个脚本,备份目标数据库

RMAN>run {execute scipt my_bk_script;}

5删除脚本

RMAN>delete script. my_bk_script;

15、archivelog模式下的完全恢复

step1:set oracle_sid=testdb

rman target rman_user/password

configure controlfile autobackup on;

step2:backup database plus archivelog delete input;

step3:shutdown immediate;

step4:重命名所有的数据文件和控制文件,不重命名联机重做日志。

step5: startup nomount;

set DBID=****

restore controlfile from autobackup;

alter database mount;

step6: restore database;

recover database;

alter database open resetlogs;

16、表空间恢复

sql"alter tablespace users offline";

sql"alter tablespace tools offline";

restore tablespace users,tools;

recover tablespace users,tools;

sql"alter tablespace users online";

sql"alter tablespace tools online";

17、数据文件恢复

sql"alter database datafile 3 offline";

sql"alter database datafile 'd:oracleoradatausers01.dbf' offline";

restore datafile 3

restore datafile 'd:oracleoradatausers01.dbf';

recover datafile 3

recover datafile 'd:oracleoradatausers01.dbf';

sql"alter database datafile 3 online";

sql"alter database datafile 'd:oracleoradatausers01.dbf'online";

18、RMAN高级恢复

1基于时间点的恢复

run

{

set until time "to_date('07/01/02 15:00:00','mm/dd/yy hh24:mi:ss')"

restore database;

recover database;

alter database open resetlogs;

}

2基于SCN的恢复(system change number (SCN)是一个非常重要的标记,Oracle使用它来标记数据库在过去时间内的状态和轨迹。http://www.unix-center.net/bbs/viewthread.php?tid=16005)

startup mount;

restore database UNTIL SCN 10000;

recover database UNTIL SCN 10000;

alter database open resetlogs;

3基于日志序列的恢复

startup mount;

restore database UNTIL SEQUENCE 100 thread 1;

recover database UNTIL SEQUENCE 100 thread 1;

alter database open resetlogs;

有待深入了解。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: