Introdução ao RMAN Parte 3 – Configurações persistentes
Olá pessoal!
Na parte de hoje iremos falar sobre as configurações persistentes do RMAN.
Decidi pular para esta parte para termos um pouco de “ação” e não ficar só nos conceitos.
Durante os próximos tópicos abordaremos um misto de conceitos e prática (como, por exemplo, durante as explicações sobre backup sets e image copies, etc.)
Para quem não lembra nas duas partes anteriores falamos sobre conceitos de backup e recover e sobre alguns termos e conceitos da ferramenta RMAN.
Irei, no final de cada artigo, citar todas as fontes que utilizei para estudo\criação dos mesmos, fique a vontade para consultar os materiais.
Lembrando que estou, assim como muitos que provavelmente irão ler este artigo, começando com RMAN, logo, minhas dúvidas poderão ser suas dúvidas ou vice-versa e prometo que irei tentar responder quaisquer questões que sejam deixadas nos comentários.
Parte 3 – Configurações persistentes
Para que servem?
As configurações persistentes do RMAN tratam de definir parâmetros padrão para tarefas que serão realizadas naquele ambiente, por exemplo, o local onde deve ser armazenado o backup e quais são as políticas para considerar o mesmo obsoleto.
Quando são utilizados?
São utilizados todas as vezes em que não for definido um padrão durante o processo, por exemplo.
[oracle@VM-ORCL ~]$ rman
Recovery Manager: Release 10.2.0.4.0 - Production on Fri Sep 30 05:01:06 2011
Copyright (c) 1982, 2007, Oracle. All rights reserved.
RMAN> connect target
Neste ponto eu posso conectar a minha base target pela chamada do RMAN, por exemplo, rman target / no prompt ou primeiro chamar o programa e só depois definir em qual base quero me conectar.
Lembrando que, por não passar nenhum banco em específico, eu estou me conectando na base de dados definida pelo parâmetro $ORACLE_SID em Linux ou %ORACLE_SID% em Windows, mas posso me conectar a qualquer base de dados target desde que o seu acesso esteja disponível (exemplo connect target sys@teste_db).
E por último, diferente do SQL*PLUS, o comando abreviado de conexão (o conn) não funciona, apenas o “connect”.
connected to target database: ORCL (DBID=1275526380)
RMAN> backup database;
Starting backup at 30-SEP-11
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=136 devtype=DISK
channel ORA_DISK_1: starting full datafile backupset
channel ORA_DISK_1: specifying datafile(s) in backupset
input datafile fno=00005 name=/u02/oracle/oradata/ORCL/DADOS.dbf
input datafile fno=00004 name=/u01/oracle/oradata/ORCL/users01.dbf
input datafile fno=00003 name=/u01/oracle/oradata/ORCL/sysaux01.dbf
channel ORA_DISK_1: starting piece 1 at 30-SEP-11
channel ORA_DISK_1: finished piece 1 at 30-SEP-11
piece handle=/u01/oracle/product/10.2.0/dbs/0tmnqm0v_1_1 tag=TAG20110930T050119 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:02:56
channel ORA_DISK_1: starting full datafile backupset
channel ORA_DISK_1: specifying datafile(s) in backupset
input datafile fno=00002 name=/u01/oracle/oradata/ORCL/undotbs01.dbf
input datafile fno=00001 name=/u01/oracle/oradata/ORCL/system01.dbf
channel ORA_DISK_1: starting piece 1 at 30-SEP-11
channel ORA_DISK_1: finished piece 1 at 30-SEP-11
piece handle=/u01/oracle/product/10.2.0/dbs/0umnqm6g_1_1 tag=TAG20110930T050119 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:01:05
channel ORA_DISK_1: starting full datafile backupset
channel ORA_DISK_1: specifying datafile(s) in backupset
including current control file in backupset
including current SPFILE in backupset
channel ORA_DISK_1: starting piece 1 at 30-SEP-11
channel ORA_DISK_1: finished piece 1 at 30-SEP-11
piece handle=/u01/oracle/product/10.2.0/dbs/0vmnqm8h_1_1 tag=TAG20110930T050119 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:02
Finished backup at 30-SEP-11
Neste caso o RMAN, por não ter recebido nenhum parâmetro adicional durante o comando de backup, utilizou todas as configurações pré-definidas para alocar canais, definir o tipo de backup, o local do mesmo e se deveria fazer backup do controlfile;
Podemos perceber facilmente que o RMAN já vem totalmente funcional desde a sua primeira utilização, entretanto, é sabido que para implementar estratégias de backup mais poderosas e flexíveis, além de permitir a reutilização de parâmetros nos scripts, a configuração é o melhor caminho.
Onde ficam armazenados?
Estes parâmetros ficam armazenados conforme o tipo de configuração do ambiente.
- Se houver Recovery Catalog os mesmos ficarão armazenados dentro dele.
- Se não houver, estas configurações ficarão armazenadas no control file do banco de dados target.
Como verificar os meus parâmetros?
O comando para verificar quaisquer parâmetros definidos é o SHOW.
Para listar todas as configurações da base target digite SHOW ALL.
RMAN> show all;
RMAN configuration parameters are:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/oracle/product/10.2.0/dbs/snapcf_ORCL.f'; # default
Como podemos verificar o comando irá mostrar todas as configurações padrão e adicionais já configuradas pelo usuário e mostrará, para os parâmetros que estão com as configurações originais, a tag “# default” ao final da respectiva linha.
Analisando os parâmetros mostrados podemos ter já uma noção do que o RMAN utiliza para definir os backups, por exemplo, o CONFIGURE RETENTION POLICY TO REDUNDANCY 1 indica que o RMAN deverá manter, no mínimo, uma cópia de datafile e uma cópia de archive por backup, outro exemplo o CONFIGURE CONTROLFILE AUTOBACKUP OFF indica que o RMAN não deverá realizar o backup do controlfile durante uma operação de backup padrão (o que eu não recomendo pois o controlfile deve sempre estar protegido com uma cópia recente, após alguma alteração estrutural, ou durante o backup.)
Os parâmetros necessários serão tratados e explicados conforme avançamos nos capítulos.
Como alterar um parâmetro?
Para alterar utiliza-se o comando CONFIGURE, por exemplo:
RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON;
new RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP ON;
new RMAN configuration parameters are successfully stored
RMAN> CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/u02/oracle/oradata/ORCL/rman/ORCL_%F';
new RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/u02/oracle/oradata/ORCL/rman/ORCL_%F';
new RMAN configuration parameters are successfully stored
RMAN> CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '/u02/oracle/oradata/ORCL/rman/BKP_%d_%t_%s.rman';
new RMAN configuration parameters:
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '/u02/oracle/oradata/ORCL/rman/BKP_%d_%t_%s.rman';
new RMAN configuration parameters are successfully stored
Nos comandos acima alteramos os parâmetros para
- Backup automático do controlfile
- Formato, local e nomenclatura do backup do controlfile
- Alocação de canal (Ou seja, neste caso, o local onde será armazenado o backup (disco) e a nomenclatura dos arquivos que serão gerados pelo RMAN).
Utilizando o SHOW ALL nota-se que os parâmetros alterados perderam a tag “# default” e estão agora com os valores definidos conforme os comandos acima.
RMAN> show all;
RMAN configuration parameters are:
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 2 DAYS;
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/u02/oracle/oradata/ORCL/rman/ORCL_%F';
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '/u02/oracle/oradata/ORCL/rman/BKP_%d_%t_%s.rman';
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/oracle/product/10.2.0/dbs/snapcf_ORCL.f'; # default
Como podemos perceber o SHOW ALL já mostra o comando pronto para ser alterado, precisando apenas do parâmetro novo =)
Como voltar um parâmetro ao seu valor original?
Para alterar um parâmetro para seu valor original é só utilizar o comando CONFIGURE + CLEAR.
Exemplo:
RMAN> CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK CLEAR;
old RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F';
RMAN configuration parameters are successfully reset to default value
RMAN> CONFIGURE CHANNEL DEVICE TYPE DISK CLEAR;
old RMAN configuration parameters:
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '/u02/oracle/oradata/ORCL/rman/BKP_%d_%t_%s.rman';
old RMAN configuration parameters are successfully deleted
Assim, mesmo sem saber as configurações originais, podemos facilmente apagar o que foi previamente configurado.
É isso pessoal, no próximo capítulo vamos falar sobre tipos de backup do RMAN (backup sets e images), explicar o trabalho sobre a alocação de canais e iremos começar a pôr a mão na massa!
Qualquer dúvida, sugestão ou reclamação os comentários estão à disposição.
Abraços!
Fontes
- Guia Backup and Recovery Basics – (Oracle®) – Obtido em http://www.oracle.com/pls/db102/portal.portal_db?selected=3
- Guia Backup and Recovery Advanced User’s Guide – (Oracle®) – obtido em http://www.oracle.com/pls/db102/portal.portal_db?selected=3
- OCP: Oracle 10g Administration II Study Guide – (Sybex®)
- Doug Stuns,Tim Buterbaugh,Bob Bryla
- Oracle Database 10g OCP Certification All-In-One Exam Guide – (Oracle Press®)
- Damir Bersinic, John Watson