RMAN常用命令汇总

     RMAN是Oracle数据库备份管理中必须用到的管理工具。它的操作方式有很多种,我整理了一些常用的操作命令,汇总起来,以方便工作。

 

(miki西游 @mikixiyou 文档,原文链接: http://mikixiyou.iteye.com/blog/1560754

1 、备份数据库操作命令

简洁版

  backup database plus archivelog format '/backup/rman/xx_%U.%T';

 

正规版

run {

allocate channel t1 type disk;

backup database format '/backup/rman/xx_%U.%T';

backup archivelog all delete input format '/backup/rman/xx_%U.%T';

sql 'alter system archive log current';

backup current controlfile format '/backup/rman/xx_%U.%T';

release channel t1;

}

 

加强版

 

run

{

delete noprompt obsolete;

allocate channel ch01 type disk rate 40M;

backup database filesperset 3 format '/backup/servdb_rman/db_%U.%T';

sql 'alter system archive log current';

backup archivelog like '+%' filesperset 20 format '/backup/servdb_rman/archivelog_%U.%T';

delete noprompt archivelog until time 'sysdate -1';

backup current controlfile format '/backup/servdb_rman/ctl_%U.%T' ;

release channel ch01;

}

 

2 、归档日志单独备份操作命令

 

不删除归档日志文件

run {

allocate channel t1 type disk;

backup archivelog all format '/backup/servdb_rman/archivelog_%U.%T';

release channel t1;

}

 

删除归档日志文件

run {

allocate channel t1 type disk;

backup archivelog all delete input format '/backup/servdb_rman/archivelog_%U.%T';

release channel t1;

}

 

不备份已经备份过一次的归档日志文件

run {

allocate channel t1 type disk;

backup archivelog all not backed up 1 times format '/backup/servdb_rman/archivelog_%U.%T';

release channel t1;

}

 

3 、还原和恢复数据库操作命令

 

完全恢复

startup nomount;

run {

  allocate channel  t1 type disk;

  restore controlfile;

  restore archivelog all;

  alter database mount;

  restore database;

  recover database;

  release channel t1;

}

sql 'alter database open resetlogs';

 

不完全恢复,至某个时间点

startup nomount;

run {

  set until time ="to_date('2012-06-14 00:00:00','yyyy-mm-dd hh24:mi:ss')";

  allocate channel  t1 type disk;

  restore controlfile;

  restore archivelog all;

  alter database mount;

  restore database;

  recover database;

  release channel t1;

}

sql 'alter database open resetlogs';

 

RAC 环境中还原某几个归档日志文件

run

{

allocate channel t1 type disk;

restore archivelog from logseq  5023 thread 1 until logseq  5036 thread 1;

releaase channel t1;

}

 

单实例环境中还原某几个归档日志文件

run

{

allocate channel t1 type disk;

restore archivelog from logseq  5023 until logseq  5036;

releaase channel t1;

}

 

4 、注册备份集到 CATALOG 操作命令

catalog start with '/backup/xxx.xxx';

 

5 、其他管理命令

list backupset;

list backup of database;

list backup of archivelog all;

report obsolete;

report obsolete redundancy = 2;

delete obsolete;

restore database validate; 

report unrecoverable;

report schema;

crosscheck backup; 

delete expired backup; 

rman target sys/*****@ora10 catalog rman/rman@dbarep

 

allocate channel for maintenance device type disk;

delete obsolete redundancy = 4 device type disk; 

delete obsolete redundancy = 2 device type disk;

 

delete noprompt archivelog until time "sysdate-5"

 

更多的命令和说明请参考oracle 官方文档和rman 帮助文档。

### RMAN Recovery Manager 常用命令及使用方法 #### 连接到目标数据库并启动RMAN会话 为了开始使用RMAN,需要先启动RMAN客户端并与目标数据库建立连接。这可以通过简单的命令完成: ```bash rman target / ``` 这条命令假设操作系统环境变量已经设置好,并且当前用户具有足够的权限来访问数据库实例[^1]。 #### 查看现有备份信息 要查看已有的备份集和镜像副本的信息,可以执行如下命令: ```sql LIST BACKUP; ``` 此命令将显示所有可用的备份记录详情,包括创建时间、类型以及存储位置等重要属性。 #### 删除不再需要的备份数据 当某些旧版本的数据备份不再被需求保留时,可利用`DELETE`指令将其移除。例如,删除特定日期之前的全部备份件: ```sql DELETE OBSOLETE; ``` 该操作不仅清除了物理上的文件,还会更新控制文件内的元数据条目,确保其反映最新的实际状况[^2]。 #### 配置默认参数设定 对于一些频繁使用的选项,可通过配置命令简化日常维护工作流程。比如指定自动备份控制文件的时间间隔: ```sql CONFIGURE CONTROLFILE AUTOBACKUP ON; ``` 开启这项功能之后,每次成功完成一次完整的数据库备份过程后都会自动生成一份新的控制文件副本作为额外的安全保障措施。 #### 执行全库级别增量备份 采用基于变更块追踪技术实现高效能的同时减少所需磁盘空间占用量的一种方式就是做差异化的增量级联式备份: ```sql BACKUP INCREMENTAL LEVEL 0 DATABASE PLUS ARCHIVELOG; ``` 上述语句指示RMAN创建整个数据库的一个零级别的基础映像,在此基础上后续只需保存发生变化的部分即可构建更高级别的增量层结构体系。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值