Oracle RMAN 维护介绍(二) 恢复目录的维护

使用恢复目录时会涉及到其他一些维护活动,比如在数据库升级或迁移期间升级恢复目录,手工配置数据库对应物以及在某些数据库操作后在同步恢复目录。

1、在RMAN中取消注册数据库

在Oracle 10g 之前,从恢复目录中取消注册数据库是一个手工操作的过程。在10g中,从恢复目录中删除数据库只需要执行 unregister database。如:

RMAN>unregister database orcl;

注意的是: 该命令不会删除该数据库的备份文件,而只是删除这些备份文件的恢复目录引用。 同样需要注意的是,只需要连接恢复目录就可以执行该命令。

2、数据库的迁移和升级问题

升级数据库时,必须同事升级恢复目录,因为数据库版本, RMAN 版本和恢复目录版本之间存在严格的格则。

用恢复目录用户连接数据库,然后查询rcver表,就可以看到恢复目录的版本:

SQL> conn rman/rman@orcl;

已连接。

SQL> select version from rcver;

VERSION

------------

11.02.00.01

只要恢复目录的版本不低于数据库的版本,就能够执行各种操作。 因此,如果在同一个恢复目录中存储多个数据库,只要升级这个恢复目录中的一个数据库。

升级恢复目录很简单,只需要在RMAN 里执行upgrade catalog命令即可。 RMAN 会提示用户再次输入upgrade catalog命令,随后将升级恢复目录。

C:/Users/Administrator.DavidDai>rman target /@bl catalog rman/rman@orcl;

恢复管理器: Release 11.2.0.1.0 - Production on 星期日 7月 11 10:16:20 2010

Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.

连接到目标数据库: BL (DBID=680066685)

连接到恢复目录数据库

RMAN> upgrade catalog;

恢复目录所有者是RMAN

再输入一次 UPGRADE CATALOG 命令来确认目录升级

RMAN> upgrade catalog;

恢复目录已升级到版本11.02.00.01

DBMS_RCVMAN 程序包升级为 11.02.00.01 版

DBMS_RCVCAT 程序包升级为 11.02.00.01 版

3、手工重置数据库对应物(reset catalog)

在打开数据库时,如果使用resetlogs参数,就会创建一个新对应物。 如果这个操作是在RMAN 中进行,则会正确的更新恢复目录,但是,如果手工执行resetlogs命令(比如:sqlplus),就必须在恢复目录中重置数据库对应物。

Rman>reset database to incarnation 5;

4、手工再同步恢复目录(resync catalog)

RMAN使用恢复目录时,它会使用在同步进程来确保恢复目录和目标数据库的控制文件一致。通常,Oracle在RMAN操作(备份和恢复)后会再同步数据库,这样就不必经常再同步恢复目录。需要再同步恢复目录的一个实例是有时使用恢复目录,有时不使用恢复目录,此时,可以使用resync catalog命令手工使Oracle 再同步恢复目录。

Rman>resync catalog;

Oracle 同步恢复目录时,它首先会创建一个快照控制文件,并比较这个文件和恢复目录。 完成比较后,Oracle更新恢复目录,是恢复目录与数据库控制文件同步。

5、恢复目录记录的删除

只有很少的记录会从恢复目录中被删除,如果不加以维护,状态为deleted的就备份会一直驻留在恢复目录中。为了解决这个问题,Oracle提供了$ORACLE_HOME/rdbms/admin/prgmanc.sql 脚本来删除恢复目录中状态为deleted的所有记录。 建议定期执行这个脚本,以控制文件恢复目录的大小。

如果要从恢复目录中删除旧的对应物记录,就必须从DBINC表中删除这些对应物。可以使用RC_DATABASE_INCARNATION 视图来确定要删除的对应物,记录想删除的每个对应物的DBINC_KEY值。然后在sqlplus中执行delete 命令,如:

SQL> select * from rc_database_incarnation;

DB_KEY       DBID  DBINC_KEY NAME     RESETLOGS_CHANGE# RESETLOGS_TIME CUR P

---------- ---------- ---------- -------- ----------------- -------------- --- -

2 1247395743          4 ORCL                940976 21-5月 -10     NO  0

2 1247395743         21 ORCL                     1 02-4月 -10     NO

2 1247395743        787 ORCL               8554968 06-7月 -10     YES 2

SQL> delete from dbinc where dbinc_key=4;

已删除 1 行。

6、备份恢复目录

我们可以使用RMAN来备份数据库,同样可以用RMAN 来备份恢复目录数据库。 只要确保设置了合理的恢复策略,就能够很快的还原恢复目录。

丢失恢复目录并不可怕,即使使用了恢复目录,在以后也可以不使用恢复目录就能够恢复数据库。关键的是,我们需要数据库控制文件的备份。

时间: 2025-01-21 13:28:36

Oracle RMAN 维护介绍(二) 恢复目录的维护的相关文章

Oracle RMAN备份(二)Backup 命令选项

五. Backup 命令选项 5.1 压缩 默认情况下,RMAN 执行NULL 数据块压缩. 5.1.1 NULL 控制压缩 使用这种形式的压缩时,Oracle不会备份未使用的数据块. 执行NULL 数据块压缩的情形有一下两种情况: (1)从未使用过的数据块不被压缩 (2)在给定的特定标准下,使用过一次的数据块也不被备份. 在第一种情况下,将不会备份其中一直没有数据的所有数据块,在第二种情况下,如果数据库和关联的数据库满足某种标准,空块将不被备份,即使 它在某个时刻包含数据. 下面是允许RMAN

Oracle RMAN 维护介绍(三)RMAN 存储的脚本

在RMAN中,我们可以创建一个命令文件,里面包含rman命令,然后在RMAN的中调用这个文件.如: Rman target usr/pwd cmdfile=backup.cmd 或者,也可以直接在RMAN 中直接运行 @@backup.cmd 此外,RMAN 还提供了恢复目录中的存储脚本, 这些操作必须使用恢复目录. 1.创建存储的脚本 使用create script RMAN 命令可以在恢复目录中存储脚本. 创建每个存储的脚本时,都要为脚本指定一个名称. 可以创建执行数据库备份,恢复和维护操作

oracle RMAN的概念与体系结构(二)启动与运行RMAN

2.1 运行要求 1.进程与内存要求 更多的进程的需要 大池的分配 2.基本环境变量需求 ORACLE_SID, ORACLE_HOME, PATH, NLS_LANG, 如果用到了基于时间的备份与恢 复,需要另外设置NLS_DATE_FORMAT 3.权限要求 需要SYSDBA系统权限 如果是本地,可以采用OS认证,远程需要采用密码文件认证 4.版本要求 RMAN 工具版本与目标数据库必须是同一个版本,如果使用了恢复目录,还需要注意 更多精彩内容:http://www.bianceng.cn/

Oracle RMAN快速入门指南

oracle|快速入门 前言这篇文章主要介绍RMAN的常用方法,其中包含了作者一些自己的经验,里面的实验也基本全在WIN 2K和ORACLE 8.1.6环境下测试成功(因为这个环境比较容易实现). 本文借鉴了网上一些高手的相关文章,希望大侠们不要见怪,此处一并谢过. 这篇文章主要是在北京出差期间写的,回到家后整理修改了一下,时间比较仓促,同时因为篇幅有限,一些技术细节不能一一覆盖了,只希望能够帮助新手入门的作用,想真正熟练掌握RMAN,必须经过较长时间的实践磨练才可以,尤其需要在工程中获得宝贵的

(转)Oracle RMAN快速入门指南

oracle|快速入门 前言这篇文章主要介绍RMAN的常用方法,其中包含了作者一些自己的经验,里面的实验也基本全在WIN 2K和ORACLE 8.1.6环境下测试成功(因为这个环境比较容易实现). 本文借鉴了网上一些高手的相关文章,希望大侠们不要见怪,此处一并谢过. 这篇文章主要是在北京出差期间写的,回到家后整理修改了一下,时间比较仓促,同时因为篇幅有限,一些技术细节不能一一覆盖了,只希望能够帮助新手入门的作用,想真正熟练掌握RMAN,必须经过较长时间的实践磨练才可以,尤其需要在工程中获得宝贵的

Oracle RMAN快速入门指南_oracle

正在看的ORACLE教程是:Oracle RMAN快速入门指南.前言: 这篇文章主要介绍RMAN的常用方法,其中包含了作者一些自己的经验,里面的实验也基本全在WIN 2K和ORACLE 8.1.6环境下测试成功(因为这个环境比较容易实现). 本文借鉴了网上一些高手的相关文章,希望大侠们不要见怪,此处一并谢过. 这篇文章主要是在北京出差期间写的,回到家后整理修改了一下,时间比较仓促,同时因为篇幅有限,一些技术细节不能一一覆盖了,只希望能够帮助新手入门的作用,想真正熟练掌握RMAN,必须经过较长时间

备份恢复8——管理恢复目录

1.概念: 1.恢复目录数据库:恢复目录数据库是指专门用于存放护肤目录方案的oracle数据库,注意,如果使用恢复目录存放rman元数据,那么一定要将恢复目录存放到堵路的恢复目录数据库中,而不应该存放到目标数据库. 2.恢复目录所有者:是指在恢复目录数据库中用于管理恢复目录数据库对象的数据库用户,注意:恢复目录所有者必须具有recovery_catalog_owenr 角色,并且恢复目录所有者不能是sys用户. 3.恢复目录方案:是指恢复目录数据库对象的集合,其名称世界就是恢复目录所有者的名称,

Oracle RMAN Catalog和Nocatalog有什么区别

nocatalog方式:用control file作为catalog,每一次备份都要往控制文件里面写好多备份信息,控制文件里面会有越来越多的备份信息,即RMAN的 备份信息写在本地控制文件里面. catalog方式:必须要首先要创建目录备份数据库(catalog,也称知识库),建立恢复目录,即数据库的备份信息写到恢复目录里面. 当通过rman nocatalog方式备份Oracle数据库,Oracle使用controlfile存放RMAN的备份信息.因此,当使用Rman nocatalog方式备

Oracle RMAN高级恢复概述(二) 基于RMAN 的恢复主题

1.只读表空间的恢复 在默认情况下,即使丢失了只读的数据文件,RMAN也不会在执行完全恢复数据库还原操作时还原只读的数据文件. 要在完全恢复期间还原只读的数据文件,就必须在restore 命令中使用check readonly 参数,如: Restore database check readonly; 注意,执行recover tablespace或recover datafile命令时,RMAN的工作情况是不一样的. 使用这两个命令时,不管表空间是否为只读状态都会执行恢复操作. 2.归档重做