catalog恢复目录介绍和配置

2.一、nocatalog介绍
nocatalog方式 就是用control file做为catalog,每一次备份都要往控制文件里面写好多备份信息,控制文件里面会有愈来愈多的备份信息。所以,当使用rman nocatalog方式备份时,备份controlfile是很是重要的。
因为nocatalog时利用controlfile存放备份信息,建议将oracle参数文件中的control_file_record_keep_time值加大(缺省为7天), 参数在$oracle_home/dbs/initsid.ora中,该参数control_file__record_keep_time设置备份信息保存时间,到规定时间就自动清除之前的备份信息。
sql> show parameter control
sql> select name,value,issys_modifiable from v$parameter where name='control_file_record_keep_time';sql


2.二、catalog介绍
catalog恢复目录存储的是与rman 备份有关的元数据。在某种意义上,恢复目录能够看作是保存rman备份和恢复所需的相关信息的副本。
咱们能够在oracle 数据库中在用户模式下建立恢复目录,这个恢复目录仅仅是一些数据包,表,索引和视图。
rman中的再同步命令会使得目标数据库控制文件中的内容刷新这些表中的数据。固然,区别在于恢复目录能够包含企业中全部数据库的信息,而控制文件只包含关于它本身的数据库的信息。
2.三、catalog恢复目录的配置过程
详见演示
01.建立catalog所须要的表空间
sql>create tablespace tbs_rman datafile '/oradata/ocm/tbs_rman01.dbf' size 20m;

02.建立rman用户并受权
sql>create user rman identified by rman default tablespace tbs_rman quota unlimited on tbs_rman;
sql>grant connect,resource,recovery_catalog_owner to rman;
03.建立恢复目录
oracle>rman catalog rman/rman
rman>create catalog tablespace tbs_rman;
04.配置目标数据库的tnsnames.ora
rman =
(description =
(address_list =
(address = (protocol = tcp)(host = 10.53.110.181)(port = 1521))
)
(connect_data =
(sid = ocm)
)
)
05.注册目标数据库
$rman target / catalog rman/rman@itpuxdb
rman>register database;
06.检查catalog恢复目录
显示目标数据库注册信息
rman> report schema ;

显示备份信息
rman>list backup;
命令解释:
report schema report shema是指在数据库中需找schema
list backup 从control读取信息
0七、在恢复目录中添加rman 备份
若是已经在没有恢复目录的状况下执行了rman备份,而且但愿在后面将这些备份添加到恢复目录,则可使用catalog命令。能够将数据文件副本,备份集片,归档日志备份,甚至整个备份目录添加到目录中。 示例以下:
rman>catalog datafilecopy '/ggs/arch_log/system01.dbf';
rman>catalog archivelog '/ggs/arch_log/arch_20.arc';
rman>catalog backuppiece '/ggs/arch_log/backup_031.bkp';
rman>catalog start with '/ggs/arch_log/';
rman>catalog recovery area;
注意: 要谨慎使用catalog start with 命令,必须在目录路径结尾加上反斜杠后缀,若是不加将遍历目录下的全部组合. 如:/oradata/ocm/ocm-old .
0八、升级的问题
upgrade catalog
0九、关于数据库对应物
在打开数据库时,若是使用resetlogs参数,就会建立一个新对应物。 若是这个操做是在RMAN 中进行,则会正确的更新恢复目录,可是,若是手工执行resetlogs命令(好比:sqlplus),就必须在恢复目录中重置数据库对应物。
Rman>reset database to incarnation 5;

恢复目录记录的删除
只有不多的记录会从恢复目录中被删除,若是不加以维护,状态为deleted的就备份会一直驻留在恢复目录中。为了解决这个问题,Oracle提供了$ORACLE_HOME/rdbms/admin/prgmanc.sql 脚原本删除恢复目录中状态为deleted的全部记录。 建议按期执行这个脚本,以控制文件恢复目录的大小。
若是要从恢复目录中删除旧的对应物记录,就必须从DBINC表中删除这些对应物。可使用RC_DATABASE_INCARNATION 视图来肯定要删除的对应物,记录想删除的每一个对应物的DBINC_KEY值。而后在sqlplus中执行delete 命令,如:
SQL> select * from rc_database_incarnation;
SQL> delete from dbinc where dbinc_key=4;
已删除 1 行。
十、手工同步恢复目录
十、手工再同步恢复目录(resync catalog)
RMAN使用恢复目录时,它会使用在同步进程来确保恢复目录和目标数据库的控制文件一致。一般,Oracle在RMAN操做(备份和恢复)后会再同步数据库,这样就没必要常常再同步恢复目录。须要再同步恢复目录的一个实例是有时使用恢复目录,有时不使用恢复目录,此时,可使用resync catalog命令手工使Oracle 再同步恢复目录。
Rman>resync catalog;
Oracle 同步恢复目录时,它首先会建立一个快照控制文件,并比较这个文件和恢复目录。 完成比较后,Oracle更新恢复目录,是恢复目录与数据库控制文件同步。
十一、恢复目录的备份
RMAN
exp/export
十二、取消数据库的注册 10
unregister database
unregister database itpuxdb
1三、恢复目录的删除
drop catalog;数据库

相关文章
相关标签/搜索