首页 > 数据库 > Oracle > 【RMAN系列1】RMAN概述与原理
目标数据库的控制文件存储了RMAN所需的信息(存储仓库使用控制文件时),RMAN通过读取控制文件来确定目标数据库的物理结构,
要备份的数据文件的位置,归档信息等,在使用RMAN时会对控制文件进行更新。
2.3 服务器进程与通道
RMAN可从从远程或本地通过普通的服务器会话与调用PL/SQL连接到实例,RMAN启动后会产生一个普通的服务器进程
一旦备份与还原操作启动,则RMAN会根据配置启用一个或多个通道
通道简言之即是完成文件复制工作的的服务器进程,多通道则实现了并行执行操作
通道分为备份或还原到磁盘的磁盘通道(disk channel)、备份还原到磁带的磁带通道(SBT),可以自动或手动分配通道
2.4 存储仓库
存储了与目标数据库及其备份相关的元数据
包含目标数据库物理结构的详细信息、数据文件的位置
已完成的所有备份的细节
RMAN的永久配置信息
存储仓库始终被存储在目标数据库的控制文件内,或存储在恢复目录内(一个单独的Oracle数据库)
参数control_file_record_keep_time决定了控制文件里可重复使用的记录所能保存的最小天数
当一条新的记录需要添加到可重用记录的空间时,并且最老的记录在可重用记录空间中还没有老化,即实际保留的天数未超过这个参数规定的天数,则控制文件中可重用记录部分的空间将被自动扩展,此时控制文件尺寸将会变大。
2.5 恢复目录
可以将目标数据库的备份恢复,元数据等相关信息写入到一个单独的数据库,这个单独的数据库即为恢复目录
恢复目录可以存储RMAN脚本,而非恢复目录情况下,则备份恢复脚本存储为操作系统文件
恢复目录的内容通常包括,数据文件、归档日志备份集,备份片,镜像副本、RMAN存储脚本,永久久的配置信息等
建议将恢复目录放置到与目标数据库不同的主机之上
2.6 支持介质管理库
介质管理库用于RMAN从磁带进行备份与还原
RMAN支持主流的磁带库设备与软件(IBM,Hewlett Packard)
2.7 辅助数据库(Standby Database $ duplicate database)
Standby Database:是目标数据库的一个副本,使用目标数据库(主数据库)archived log将其更新,不具有唯一的DBID。rman 可以创建或备份Standby Database,可用于主数据库的故障转移
duplicate database:是目标数据库的一个副本或子集,且拥有唯一的DBID,从而独立于主数据库。能够在相同的恢复目录内作为一个主数据库注册,通常用于测试目的
TSPITR(tablespace point-in-time recovery):表空间时点恢复,将一个或多个表空间恢复到非当前状态,而其它表空间保留当前状态
2.8 备份目的地
默认的备份目的地为闪回区,$ORACLE_BASE/flash_recovery_area/
可以设置参数DB_RECOVERY_FILE_DEST参数和DB_RECOVERY_FILE_SIZE进行调整
资源:共享内存,更多的进程
权限:授予用户sysdba权限,OS访问设备的权限
远程操作
设置密码文件
确保密码文件被备份
全球化环境变量设置
在RMAN命令行格式化时间参数
目标数据库
恢复目录数据库,缺省情况下RMAN运行在非恢复目录数据库
辅助数据库
Standby database
Duplicate database
TSPITR instance
--使用操作系统认证连接到目标数据库
Unix: $ ORACLE_SID = orcl; export ORACLE_SID
$ rman target /
Win: C:/> set oracle_sid = orcl
C:/> rman target /
--从命令行连接到目标数据库和恢复目录
% rman target / catalog rman/cat@catdb --使用OS认证,第二个rman为恢复目录的schema
% rman target sys/oracle@trgt catalog rman/cat@catdb --使用Oracle Net 认证
--从rman提示符连接到目标数据库和恢复目录
% rman
RMAN> connect target / --使用OS认证
RMAN> connect catalog rman/cat@catdb
% rman
RMAN> connect target sys/oracle@trgt --使用Oracle Net 认证
RMAN> connect catalog rman/cat@catdb
--命令行连接到辅助数据库
% rman auxiliary sys/aux@auxdb
% rman target sys/oracle@trgt auxiliary sys/aux@auxdb catalog rman/cat@catdb
--从rman提示符连接辅助数据库
% rman
RMAN> connect auxiliary sys/aux@auxdb
% rman
RMAN> connect target sys/oracle@trgt
RMAN> connect catalog rman/cat@catdb
RMAN> connect auxiliary sys/aux@auxdb
--其它
远程连接
rman target sys/oracle@trgt
rman target / nocatalog 等同于rman target /
--rman命令行参数
输出到日志文件
$ rman target sys/oracle
log = $ORALCE_HOME/oradata/log/rman.log append
执行命名文件
$ rman target sys/oracle
cmdfile = $ORACLE_HOME/scirpts/my_rman_script.rcv
$rman target sys/oracle@prod @'$ORACLE_HOME/scirpts/my_rman_script.rcv'
四、RMAN命令
RMAN 命令分类
单命令
仅仅在RMAN提示符下执行
单独被执行
不能够作为RUN的子命令
如backup database
下列命令不能用作批命令来使用
CONNECT
CONFIGURE
CREATE CATALOG, DROP CATALOG, UPGRADE CATALOG
CREATE SCRIPT, DELETE SCRIPT, REPLACE SCRIPT
LIST
REPORT
批命令
在RUN命令中用括号括起来使用,常用的批命令为allocate channel,set newname for datafile,release channel,switch,set等
作为一个组被执行
如:
RMAN> RUN {
2> backup incremental level 0
3> format '/u01/app/oracle/bak/%d_%s_%p'
4> fileperset 5(database include current controlfile);
5> sql 'alter databaes archive log current ';}
混合的独立和作业命令
RMAN工具版本与目标数据库必须是同一个版本。如使用恢复目录 还需要注意
创建rman恢复目录的脚本版本必须大于或等于恢复目录所在数据库的版本
创建rman恢复目录的脚本版本必须大于或等于目标数据库版本
三、使用RMAN连接到数据库
1.RMAN使用时需要考虑的问题
2.连接类型
3.连接目标数据库或恢复目录
--不连接数据库仅启动rman
[oracle@ENMOEDU ~]$ rman
Recovery Manager: Release 11.2.0.3.0 - Production on Sat May 17 16:02:14 2014
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
RMAN>
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29620680/viewspace-1163319/ ,如需转载,请注明出处,否则将追究法律责任。