Utilização do catalago de recuperação do RMAN


Criando e Mantendo um Catálogo do RMAN.

Identificar situações que exigem o catálogo de recuperação do RMAN.

O RMAN sempre armazena seus metadados (informações sobre a estrutura do banco de dados, conjuntos de backups e cópias-imagens) no arquivo de controle do banco de dados de destino. Entretanto, existem algumas vantagens e desvantagens quanto ao marmazenamento desses metadados em um catálogo de recuperação guardado em um banco de dados separado. As duas seções seguintes discutirão os prós e contras de usar um catálogo de recuperação.

Usando o arquivo de controle para metadados do RMAN.

A oracle recomenda o uso do catálogo de recuperação, mas isso traz algumas desvantagens. Quer você utilize ou não o catálogo as informações de backup do RMAN serão sempre armazenadas no arquivo de controle do banco de dados de destino. Embora as informações do RMAN contidas no arquivo de controle sejam obsoletada com base no parâmetro de inicialização CONTROL_FILE_RECORD_KEEP_TIME issão não será problemático se você usar uma política de retenção do RMAN que tenha uma janela inferior ao parâmetro.
  • O parâmetro CONTROL_FILE_RECORD_KEEP_TIME deixa as informações do RMAN obsoletas.
  • A política de retenção do RMAN deve ter uma janela inferior ao parametro CONTROL_FILE_RECORD_KEEP_TIME.
Usando o catálogo de recuperação para metadados do RMAN.

O fato de usar mais de um banco de dados e de usar as informações por muito tempo justificam o uso do catálogo de recuperação.

RESYNC CATALOG: Este comando deixa as informações do arquivo de controle do banco de dados de destino residindo no catálogo de recuperação também.


Scripts armazenados só podem ser usados no catálogo de recuperação.
  • SCRIPT LOCAL: específico para cada banco de dados de destino.
  • SCRIPT GLOBAL: executável para todos os bancos de dados de destino.
Visões para recuperar os metadados de todos os banco de dados de destino do catálogo. usar as visões RC_*. (conecte-se ao banco de dados do catálogo).
  • RC_ARCHIVED_LOG
  • RC_BACKUP_FILES
  • RC_DATABASE
O uso do catálogo permite o seguintes comandos.

BACKUP ... KEEP UNTIL TIME: Manter um backup por um período de tempo diferente do defindo na política de retençãdo configurada.
BACKUP ... KEEP FOREVER: Manter um backup indefinidamete ou até você removê-lo manualmente.
REPORT SCHEMA ... AT: Mostra a estrutura do banco de dados em um momento específico no passado.


Criar e configurar um catálogo de recuperação.

Usar um banco de dados de destino do RMAN como resposítorio é fortemente desaconselhavel.
A perda do banco de dados de destino impede qualquer possibilidade de recuperação bem-sucedida do banco de dados do RMAN, por que os metadados desaparecem com o banco de dados de destino.

Três etapas básicas:
  1. Configurar o banco de dados de catálogo de recuperação: Requisitos mínimos para o repositório.
    • 125 MB no tablespace do catálogo no mínimo.
    • 90 MB no tablespace SYSTEM
    • 5 MB no tablespace TEMP
    • 5 MB no tablepsace UNDO.
    • 15 MB no tablespace padrão RMAN para cada banco de dados registrado no catálogo.
    • 1 MB para cada arquivo de redo log online.
  • Crie o tablespace RMAN com usuário sysdba.
      • sqlplus / as sysdba
      • create tablespace rman datafile '+data'
      • size 125m autoextend on;
  1. Criar o proprietário do catálogo de recuperação.
      • create user rman
      • identified by rman
      • default tablespace rman
      • quota unlimited on rman;
    grant recovery_catalog_owner to rman;
    A atribuição acima inclui os seguinte privilégios de sistema:

      ALTER SESSION
      CREATE CLUSTER
      CREATE DATABASE LINK
      CREATE PROCEDURE
      CREATE SEQUENCE
      CREATE SESSION
      CREATE SYNONYM
      CREATE TABLE
      CREATE TRIGGER
      CREATE TYPE
      CREATE VIEW
  1. Criar o catálogo de recuperação.
Com o usuário criado, conectar-se ao catálogo e crie o repositório com o comando create catalog.
      • rman catalog rman/rman@rcat
      • create catalog;

Sincronizar o catálogo de recuperação.

Registrar um banco de dados: Cada banco de dados cujo backup ou recuperação será feita pelo RMAN deve ser registrado  no repositório do RMAN. Essa operação registra informações como esquema do banco de dados de destino e o DBID exclusivo do banco de dados de destino. Todos os banco de dados registrados junto ao repositório devem ter DBIDs únicos.
      • rman target / catalog rman@rcat
      • register database;
Mudando o DBID de um banco de dados: Quando existirem dois banco de dados com o mesmo DBID e você precisar registrar os dois, o comando DBNEWID deverá ser executado para um deles, pois o RMAN não pode registrar dois bancos com o mesmo número no catálogo de recuperação.


Executar o comando NID sem quaisquer parâmentros na linha de comando exibirá os possíveis parâmetros.

TARGET especifica o nome de usuário e senha do banco de dados: Como alternativa, você pode especificar DBNAME para criar um novo nome de banco de dados, adicionalmente ao DBID; para
mudar apenas o nome do banco de dados especifique SETNAME=Y.

Verificando o DBID antes de alterá-lo: select dbid, name from v$database;


O bando de dados cujo o nome e DBID serão modificados deve ser desligado e reiniciado no modo MOUNT.
      • shutdown immediate;
      • startup mount;

Execute o comando NID na linha de comando para mudar apenas o DBID:

      • nid target=system/syspass@dw


Após executar com sucesso o banco fará shutdown automaticamente.


Por último, abra o banco de dados com a opção RESETLOGS:  



      • startup mount;
      • alter database open resetlogs;


Mostrar o DBID do banco de dados depois da alteração: select dbid, name from v$database;

Considerações após mudar o DBID: Como todos os arquivos de backup contém o antigo DBID, os backups anteriores são inúteis; após alterar o DBID, abra o banco de dados pela primeira vez com a opção RESETLOGS, e você precisará fazer um backup completo do banco de dados, uma vez que agora os backups anteriores não podem ser utilizados.


Existem casos em que precisamos cancelar o registro do banco de dados do catálogo.


      • rman target / catalog rman/rman@rcat;
      • unregister database;



Depois que você cancelar o registro de seu banco de dados, os metadados do backup ainda permanecerão armazenados no arquivo de controle pelo número de dias especificado pelo parâmetro de inicialização CONTROL_FILE_RECORD_KEEP_TIME.

Catalogar arquivos de backup adicionais.

Se você criou backups fora do RMAN ou registrou seu banco de dados e os backups do RMAN já tinham sido obsoletados do arquivo de controle, use o comando CATALOG para adicionar esses backups ao catálogo do RMAN. O comando CATALOG pode incluir os seguintes tipos de arquivo de backup no catálogo de recuperação, com a respectiva paralvra-chave do comando CATALOG.


O comando CATALOG pode incluir os seguintes tipos de arquivo de backup no catálogo de recuperação


  • Cópias de arquivos de dados - DATAFILECOPY.
  • Partes de backup - BACKUPPIECE
  • Cópias de arquivos de controle - CONTROLFILECOPY
  • Arquivos de redo log arquivados - ARCHIVELOG

Catalogar arquivos de backup adicionais: Se você criou backups fora do RMAN ou registrou seu banco de dados e os backups do RMAN já tinham sido obsoletados do arquivo de controle, use o comando CATALOG para adicionar esses backups ao catálogo do RMAN. O comando CATALOG pode incluir os seguintes tipos de arquivo de backup no catálogo de recuperação, com a respectiva paralvra-chave do comando CATALOG.



Catalogando todos os arquivos do grupo de disco +DATA do ASM: catalog start with '+DATA';



Se existir uma área de recuperação flash você pode catalogar facilmente os arquivos desta área usando o comando RECOVERY AREA do comando CATALOG.


  • catalog recovery area noprompt; --NOPROMPT cataloga sem pedir confirmação.

Sincronizar manualmente o catálogo de recuperação: O catalog de recuperação do RMAN registra informações sobre as estruturas do banco de dados de destino, redo logs arquivados e backups quandos você executa um comando BACKUP do RMAN ou faz uma ressincronização manual.



Algumas situações podem exigir a ressincronização dos metadados contidos no arquivo de controle do DB de destino com o catálogo de recuperação: Exemplo: O banco de dados de catálogo não estava disponível quando o backup foi executado, nesta situação o RMAN sempre registra no arquivo de controle do bando de dados de destino, você fez mudanças na estrutura do banco de dados de destino essas mudanças são inseridas automaticamente no arquivo de controle do DB de destino e não no catálogo.Execute o comando RESYNC CATALOG.


  • resync catalog;


Nenhum comentário:

Postar um comentário