Sie sind auf Seite 1von 33

Documento sobre Rman

Gerencia de Tecnologa
Direccin de Tecnologa Informtica

RMAN

CONCEPTOS GENERALES______________________________________________3
Instalacin_____________________________________________________________3
COMANDO RMAN______________________________________________________4
Parmetros de la base target_______________________________________________5
Sentencia_________________________________________________________________________6
Backup de 1 Datafile_______________________________________________________________7
Backup de Tablespaces______________________________________________________________8
Backup del controlfile______________________________________________________________8
Backup de Archives________________________________________________________________9
Full Backup_______________________________________________________________________9
Backup Incrementales______________________________________________________________9
Script actual de BNPAIS:___________________________________________________________10
Monitoreo de Jobs de Rman__________________________________________________13
Indentificacin de sesiones de rman__________________________________________________13
Progreso de un job________________________________________________________________13
RESTORE____________________________________________________________14
Restore datafile_____________________________________________________________14
Restore Tablespace________________________________________________________________14
Restore Full Database______________________________________________________________15
Restore Full Database______________________________________________________________15
Restore Full Database until time o until SCN___________________________________________15
Restore Controlfile con varias bases con el mismo nombre________________________________16
Monitoreo de Procesos_____________________________________________________________16
Mantenimiento del Repositorio____________________________________________17
Registrar un base___________________________________________________________17
Desregistrar un base_________________________________________________________17
Reseteo del Catlogo________________________________________________________18
Reseteo del catlogo a una incarnation anterior_________________________________________18
Reseteo del catlogo luego de un recovery incompleto____________________________________18
Cambio de disponibilidad de un backup o una copia_____________________________________19
Chequeo cruzado del Repositorio______________________________________________19
Borrado de Backups y copias actualizando el estado en el Repositorio________________20
Borrado fsico de backups o copias y borrado del repositorio_______________________________20
Borrado de registros de backups expirados del catlogo___________________________________21
Borrado de registros de image copy y archive redo log sin borrado fsico_____________________21

Autor: : Paula Sajoux Confidencial de la Versin : 1.0


Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 1 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

Recovery del Catlogo:______________________________________________________22


Manejo de Scripts______________________________________________________23
Creacin__________________________________________________________________23
Ejecucin__________________________________________________________________23
Actualizacin de un script____________________________________________________23
Borrado de un script________________________________________________________23
Impresin de un script_______________________________________________________24
Listado de los scripts guardados_______________________________________________24
Resincronizacin del Catlogo____________________________________________24
Cuando resincronizar________________________________________________________24
Generacin de Reportes_________________________________________________25
Generacin de reportes con List_______________________________________________25
Generacin de reportes con Report____________________________________________26
Reporte de objetos que necesitan un backup_____________________________________27
Reportes de backups obsoletos________________________________________________27
Reporte de backups irrecuperables_____________________________________________28
Reporte de esquema de la base de datos a un punto en el tiempo_____________________28
Vistas________________________________________________________________28
Otros comandos________________________________________________________29
SET_RUN_OPTIONS_______________________________________________________29
Troubleshooting Rman__________________________________________________30
Mensajes de Errores________________________________________________________30
Rangos de mensajes de errores_______________________________________________________30
Escenarios_________________________________________________________________30
Falla en Backup Fails error rman-6089________________________________________________30
RMAN Cannot Locate an Archived Log_______________________________________________31

Autor: : Paula Sajoux Confidencial de la Versin : 1.0


Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 2 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

CONCEPTOS GENERALES
Backup Set:
Es un objeto lgico que contiene por lo menos un backup piece que constituye un
backup.

Backup piece:
Es uno o ms archivos fsicos que estn almacenados bajo un formato especial de
rman. Los archivos fsicos no se pueden dividir en diferentes backup pieces. Cada
backup piece es un archivo. El tamao de los Backup pieces debe restingirse al
tamao mximo de archivo permitido por el SO.

Image Copy:
Es una copia de un archivo fsico (datafile, archivelog o controlfile).

Compresin del Backup Set

Rman comprime durante el backup, es decir que no graba los bloques que nunca
fueron usados. Solo las imgenes de un datafile contienen todos sus bloques.
Los bloques de datos en un datafile se agrupan en buffers. Cuando Rman encuentra
un bloque usado lo graba en el backup set. Cuando Rman encuentra cuatro bloques
contiguos no usados, graba un bloque comprimido (del tamao de BD_BLOCK_SIZE)
en el backup set.

Utilice el parmetro DB_FILE_DIRECT_IO_COUNT para dimensionar el tamao del


buffer. Ver el manual Oracle 8i Designing and Tuning performance para saber como
RMAN buffers sus backups.

Instalacin

1. Crear Base Rcat (base donde est el catalog). El catlogo requiere aprox. system
50Mb, temp 5mb, 10 mb de recovery catalog y 5 Mb de rollback segments.
2. Crear un tablespace donde va a ir el catlogo.
3. Crear Esquema o Usuario:
Create user rman identified rman default tablespace xxxx

Autor: : Paula Sajoux Confidencial de la Versin : 1.0


Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 3 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

Temporary tablespace yyyy quota unlimited on xxxxx (catalogo);


grant recovery_catalog_owner to rman;
Setear Oracle_Sid con la base que se va a resguardar.

4. Creacin del catlogo en el tablespace default del usuario:


% set ORACLE_SID=RCAT
% rman catalog rman/rman
RMAN> create catalog;

5. Registracin de la base en el catlogo:


% set ORACLE_SID=PROD
% rman TARGET / RCVCAT rman/rman@rcat
( There are a number of ways to connect to the RMAN subsystem. If an @ symbol is used on the
TARGET side of the command then an external passwordfile must be used and the INIT.ORA
parameter REMOTE_LOGIN_PASSWORDFILE must be exclusive. Refer to your Oracle Server
Administration guide for more information about password files.)

Recovery Manager: Release 8.0.5.2.0 - Production

RMAN-06005: connected to target database: PROD


RMAN-06008: connected to recovery catalog database

RMAN> register database;

Una vez realizados todos estos pasos se podr realizar el backup.

COMANDO RMAN

1. Conexin a Rman y al catlogo en un solo paso:


Setear el ORACLE_SID como la base target (la base de la cual se realiza
backup).
Ejecutar cualquiera de estos comandos:
rman target / catalog rman/rman@RCAT
rman catalog rman/rman@RCAT target /

2. Conexin a rman y al catlogo en varios pasos:


Rman target / (se conecta a la base target sin abrir el catalogo) o rman y
luego connect target /
connect catalog rman/rman@RCAT
Autor: : Paula Sajoux Confidencial de la Versin : 1.0
Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 4 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

connect target

3. Para correr un script desde la lnea de comando:


rman target / rcvcat rman/rman@RCAT @run_bkp_data.txt log=archivo.log
Donde rcvcat se utiliza para indicar el string de conexin al catlogo.

Nota: para poder realizar un startup o shutdown de la base que se esta


respaldando debe setear el ORACLE_SID de esa base, es decir sin sqlnet.

4. Para generar un log debe colocar en la lnea de comando log=archivo


Ej. Rman target / catalog rman/rman@RCAT log= 'arch1.log'

Parmetros de la base target

Autor: : Paula Sajoux Confidencial de la Versin : 1.0


Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 5 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

BACKUPS

Para realizar un backup cualquiera de estos objectos sern respaldados con el


comando backup:

-0 Database
-1 Tablespaces
-2 Datafiles
-3 Archived redo log
-4 Control file (actual o una imagen)

Dentro de la poltica de backup, hay que realizar con el S.O. backup de los
archivos de initializacin (inits y configs), de passwords, de configuracin network
y los Lobs externos.

Sentencia
Si a un backup no se le pone el format lo graba en $ORACLE_HOME/dbs

Full copia todos los bloques en un backup set, salteando los bloques que
nunca fueron usados.

Incremental level (nro) copia slo los bloques que fueron modificados desde el
ltimo incremental n, donde n es un nmero entero entre 0 y 4. Este tipo de
backups es un backup diferencial.
Si se utiliza un incremental deber especificar: datafile, datafilecopy, tablespace o
database. No se puede realizar un incremental de los controlfiles, redo.

Parms ??

Cumulative copia los bloques usados desde el ms reciente backup de nivel


n-1.

Nochecksum
Check logical

Filesperset Nro define el mximo nmero de archivos por backup set. El valor
por default es 64, nmero de archivos/nmero de canales. Ver parmetro setsize.

Format

Autor: : Paula Sajoux Confidencial de la Versin : 1.0


Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 6 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

Ej; format '/u08/Ora_bkp/%c_%p_%s.%d';

%c nmero de copia del backup piece cuando se utiliza la duplicacin de copias


(set duplex).
%p nmero de backup piece
%s nmero de backup set
%d nombre de la base de datos

channel define el canal que va a utilizar cuando crea el backup set. (ch1). Sino
se especifica rman los asigna dinmicamente.

Skip excluye datafiles or archive logs del backup set.


Offline, readonly, inaccessible

Tag tag_name define una etiqueta para el backup set. Por ej: semanal,
lunes,etc.

Setsize integer define el tamao mximo para un backup set en K. Para limitar
un backup set a 2M hay que especificar setsize=2000.

Backupspec
Lista de objetos que van a ser respaldados.
Datafile si pone el 1 adems resguarda el controlfile.
Datafile copy realiza una image copy de los datafiles especificados.
Tablespace
Database
Current controlfile
Controlfile copy 'filename'
Delete input borra los archivos de entrada despus de la creacin deb
backup set. Se utiliza para los archive.

Backup de 1 Datafile

Script:
replace script data1_bkp {
allocate channel ch1 type disk;
backup
datafile 1, 2, 3, 4
filesperset = 5
format '/u08/Ora_bkp/%c_%p_%s.%d';
}

Autor: : Paula Sajoux Confidencial de la Versin : 1.0


Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 7 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

Cada vez que se realiza un backup del datafile 1 (system) automticamente


realiza un backup del control file.

Filesperset: especifica la cantidad mxima de archivos por canal.


El filesperset est en 5 para que entren los 4 datafiles y el control file. Cuando lo
pusimos el filesperset en 4, primero realizo en el nico canal que tiene asignado
el backup de 3 datafiles y del control file, y luego hizo el backup del ltimo datafile

Otro ejemplo:
replace script data2_bkp {
allocate channel ch1 type disk;
backup
(datafile 5, 6, 7, 8
filesperset = 4)
datafilecopy '/u08/Ora_bkp/data_c2.f';
}

Backup de Tablespaces

Script:
replace script tbs_bkp{
allocate channel ch1 type disk;
allocate channel ch2 type disk;
allocate channel ch3 type disk;
allocate channel ch4 type disk;
backup filesperset = 10
tablespace rbs, data01
include current controlfile
format '/u08/Ora_bkp /%c_%p_%s.%d';
}

Backup del controlfile

Puede realizar un backup del controlfile con la base est abierta o cerrada. Rman
usa
un snapshot controlfile.

Autor: : Paula Sajoux Confidencial de la Versin : 1.0


Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 8 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

Script:
Run {
Allocate channel ch1 type disk;
Backup current controlfile
Tag = 'Lunes_ctrl_file';
}

Backup de Archives

Script:
Run {
Allocate channel ch1 type disk;
Backup archivelog all
Delete input;
}

La clusula delete input borra los archives luego de realizar el backup.

Tambin se puede realizar el backup de los archives en un rango de fechas, SCN


o log sequence. Por ejemplo:
Run {
Allocate channel ch1 type disk;
Backup archivelog all from time 'sysdate-30' until time 'sysdate-7';
}

Full Backup

Script:
replace script full_bkp{
allocate channel ch1 type disk;
allocate channel ch2 type disk;
allocate channel ch3 type disk;
allocate channel ch4 type disk;
backup
FULL
format '/u08/Ora_bkp/%c_%p_%s.%d'
DATABASE;
sql 'ALTER SYSTEM ARCHIVE LOG ALL';
backup archivelog all;
}

Autor: : Paula Sajoux Confidencial de la Versin : 1.0


Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 9 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

Backup Incrementales
Para poder aplicar un incremental 1 debo realizar previamente un incremental 0,
el backup full no sirve. Hay dos tipos de backups incrementales: diferencial y
acumulativo. Un backup diferencial resguarda todos los bloques modificados
desde el backup mas reciente del mismo nivel o inferior. Un backup incremental
acumulativo resguarda todos los bloques modificados desde el ms reciente
backup del nivel n-1 o inferior.

Backup Incremental 0
Script:
replace script inc0_bkp{
allocate channel ch1 type disk;
allocate channel ch2 type disk;
allocate channel ch3 type disk;
allocate channel ch4 type disk;
backup
INCREMENTAL LEVEL=0
format '/u08/Ora_bkp/%c_%p_%s.%d'
DATABASE;
sql 'ALTER SYSTEM ARCHIVE LOG ALL';
backup archivelog all;
}

Script actual de BNPAIS:


replace script inc0_bkp
{
set command id to 'rman'; - Para poder identificar la
sesion en la v$process
allocate channel ch1 type disk
format '/bck01/oradata/BNPAIS/%c_%p_%s.%d';
allocate channel ch2 type disk
format '/bck02/oradata/BNPAIS/%c_%p_%s.%d';
allocate channel ch3 type disk
format '/bck03/oradata/BNPAIS/%c_%p_%s.%d';
allocate channel ch4 type disk
format '/bck04/oradata/BNPAIS/%c_%p_%s.%d';
allocate channel ch5 type disk
Autor: : Paula Sajoux Confidencial de la Versin : 1.0
Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 10 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

format '/bck05/oradata/BNPAIS/%c_%p_%s.%d';
change archivelog all validate; - Actualizacin de archives-
resync catalog;
backup
INCREMENTAL LEVEL = 0
tag = 'FULL0'
(DATABASE
filesperset = 20 );
sql 'ALTER SYSTEM ARCHIVE LOG CURRENT';
backup archivelog all;
release channel ch1;
release channel ch2;
release channel ch3;
release channel ch4;
release channel ch5;
}

Backup Incremental 1

Script de Backup database incremental 1:


replace script inc1_bkp{
allocate channel ch1 type disk;
allocate channel ch2 type disk;
allocate channel ch3 type disk;
allocate channel ch4 type disk;
backup
INCREMENTAL LEVEL=1
format '/u08/Ora_bkp/%c_%p_%s.%d'
DATABASE;
sql 'ALTER SYSTEM ARCHIVE LOG ALL';
backup archivelog all;
}

Script de Backup tablespace incremental 1:


Run {
allocate channel ch1 type disk;
backup
INCREMENTAL LEVEL=1
Tablespace system
Datafile '/oracle/bkp/tbs_sys_1.f';
}

Autor: : Paula Sajoux Confidencial de la Versin : 1.0


Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 11 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

Script de Backup incremental 1 acumulativo de BNPAIS:


replace script inc1c_bkp
{
set command id to 'rman';
allocate channel ch1 type disk
format '/bck01/oradata/BNPAIS/%c_%p_%s.%d';
allocate channel ch2 type disk
format '/bck02/oradata/BNPAIS/%c_%p_%s.%d';
allocate channel ch3 type disk
format '/bck03/oradata/BNPAIS/%c_%p_%s.%d';
allocate channel ch4 type disk
format '/bck04/oradata/BNPAIS/%c_%p_%s.%d';
allocate channel ch5 type disk
format '/bck05/oradata/BNPAIS/%c_%p_%s.%d';
change archivelog all validate;
resync catalog;
backup
INCREMENTAL LEVEL = 1 CUMULATIVE
tag = 'INC1C'
(DATABASE
filesperset = 20 );
sql 'ALTER SYSTEM ARCHIVE LOG CURRENT';
backup archivelog all;
release channel ch1;
release channel ch2;
release channel ch3;
release channel ch4;
release channel ch5;
}

Backup Incremental 2

Script de Backup incremental 2 diferencial de BNPAIS:


replace script inc2_bkp
{
set command id to 'rman';
allocate channel ch1 type disk
format '/bck01/oradata/BNPAIS/%c_%p_%s.%d';
allocate channel ch2 type disk
format '/bck02/oradata/BNPAIS/%c_%p_%s.%d';
allocate channel ch3 type disk
format '/bck03/oradata/BNPAIS/%c_%p_%s.%d';
allocate channel ch4 type disk

Autor: : Paula Sajoux Confidencial de la Versin : 1.0


Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 12 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

format '/bck04/oradata/BNPAIS/%c_%p_%s.%d';
allocate channel ch5 type disk
format '/bck05/oradata/BNPAIS/%c_%p_%s.%d';
change archivelog all validate;
resync catalog;
backup
INCREMENTAL LEVEL = 2
tag = 'INC2'
(DATABASE
filesperset = 20 );
sql 'ALTER SYSTEM ARCHIVE LOG CURRENT';
backup archivelog all;
release channel ch1;
release channel ch2;
release channel ch3;
release channel ch4;
release channel ch5;
}

Monitoreo de Jobs de Rman


Para visualizar informacin deber ver las siguientes vistas: v$session, v$process,
v$session_longops, v$session_wait

Indentificacin de sesiones de rman


Para poder identificar las mismas se debe usar el comando set command id. Este
comando coloca en la columna CLIENTE_INFO de v$session el string definido. Realice un
join entre v$session y v$process para relacionar la sesin del servidor con el canal.

Ej: set command id to 'rman'

SELECT sid, spid, client_info FROM v$process p, v$session s WHERE p.addr = s.paddr AND
client_info LIKE '%id=rman%';

Progreso de un job

select sid, serial#, context,


round(sofar/totalwork*100,2) "% Complete",
substr(to_char(sysdate,'yymmdd hh24:mi:ss'),1,15) "Time Now"
from v$session_longops
where compnam = 'dbms_backup_restore'; -- for 8.0
where substr(opname,1,4)='RMAN' -- for 8.1

Autor: : Paula Sajoux Confidencial de la Versin : 1.0


Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 13 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

SELECT sid, serial#, context, sofar, totalwork, round(sofar/totalwork*100,2) "%


Complete"
FROM v$session_longops
WHERE opname LIKE 'RMAN%'
AND opname NOT LIKE '%aggregate%'
AND totalwork != 0
AND sofar <> totalwork

Se despus de 2 o 3 minutos no aumenta el % Complete, puede haber un problema, chequee en la


vista v$session_wait

SELECT sid, seconds_in_wait AS sec_wait, event


FROM v$session_wait 2
WHERE wait_time = 0 3
ORDER BY sid;

Autor: : Paula Sajoux Confidencial de la Versin : 1.0


Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 14 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

RESTORE

Luego de un restore full si se resetea los logs para que el Catalog la vea hay que
resetear la base desde el Rman con el siguiente comando: reset batabase;

Restore datafile

-5 Borrado de datafile
-6 Shutdown abort
-7 Start up con error
-8 Shutdown

run {
startup nomount;
allocate channel ch1 type disk;
restore datafile '/u01/oradata/BSBASPE/RATING_DATA_01.dbf';
alter database mount;
recover datafile '/u01/oradata/BSBASPE/RATING_DATA_01.dbf';
alter database open;
}

Nota: exige que se realice el restore con base nomount y el recover con database
mount, excepto que se coloque off line el tablespace o el datafile.

Restore Tablespace

Se dej la base abierta y se incluy en el script poner el tablespace offline y luego


online.

Script:
run {allocate channel ch1 type disk;
sql "alter tablespace rating_data offline immediate";
restore datafile '/u01/oradata/BSBASPE/RATING_DATA_01.dbf';
recover tablespace RATING_DATA;
sql "alter tablespace rating_data online";
}

Autor: : Paula Sajoux Confidencial de la Versin : 1.0


Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 15 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

Restore Full Database

Script:
run {
starup nomount
allocate channel ch1 type disk;
allocate channel ch2 type disk;
allocate channel ch3 type disk;
allocate channel ch4 type disk;
restore controlfile;
restore database;
alter database mount;
recover database;
alter database open resetlogs;
}

Dio error luego de montarla. Salimos del Rman , volvimos a entrar y luego se corri
este script.
run {
allocate channel ch1 type disk;
allocate channel ch2 type disk;
allocate channel ch3 type disk;
allocate channel ch4 type disk;
recover database;
alter database open resetlogs;
}

Restore Full Database


Ejemplo:

Restore Full Database until time o until SCN

1. Setee las variables de entorno NLS_LANG y NLS_DATE_FORMAT.


2. Aloque los canales
3. Realice el restore de la base
Autor: : Paula Sajoux Confidencial de la Versin : 1.0
Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 16 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

4. Realice el recover de la base


5. Abrala con la opcin resetlogs
6. Resetee el catlogo con: reset catalog;
7. Realice un backup full.

Por ejemplo:
Run {
Set until time 'Nov 15 2001 09:0000';
Allocate channel ch1 type disk;
Restore database;
Recover database;
Alter database open resetlogs;
}

Para realizarlo hasta un SCN se debe colocar lo siguiente: Set until SCN 1000
Para realizarlo hasta un log sequence: set until logseq 6 thread 1

Restore Controlfile con varias bases con el mismo nombre


Para saber cual es la base de datos debe conocer el dbid.

Restore del controlfile usando en dbid


Para usar el dbid no debe conectarse a la base target, debe primero realizar el set
dbid y luego conectarse al target.

Set dbid = target_dbid;


Run {
Allocate channel ch1 type disk;
Restore controlfile;
Alter database mount;
}

Monitoreo de Procesos

Autor: : Paula Sajoux Confidencial de la Versin : 1.0


Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 17 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

Query v$SESSION_LONGOPS: muestra el estado de la copia

Select dis, serial#, context, sofar, totalwork round(sofar/totalwork*100,2) "%Complete"


From v$session_longops
Where opname like 'RMAN:%'
And opname not like 'RMAN: aggregate%';

Query V$PROCESS y V$SESSION: para controlar el proceso desde el SO

Select sid, spid, cliente_info


From v$process p, v$session a
Where p.addr = s.paddr
And client_info like '%id=rman%0;

Mantenimiento del Repositorio

Registrar un base
Para registrar una base, la base que desea registrar debe estar montada o abierta.
Pasos:
-0 Conectarse al catlogo y a la base desde rman
Rman target / catalog rman/rman@RCAT
Register database;

Problemas con la identificacin de la base:


Oracle utiliza el db_identified para distinguir una base de otra.
Generalmente las bases tienen distinto identificador, excepto que se haya creado en
base a otra base de datos copiando los data file.

Desregistrar un base
Para desregistrar una base, la base que desea registrar debe estar montada o
abierta.

Pasos:
1. Conectarse a la base targetdesde rman
Rman target / nocatalog

2. Listar las copias y los backup sets


Autor: : Paula Sajoux Confidencial de la Versin : 1.0
Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 18 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

List backup of database;

3. Borrar los backups del sistema operativo

Allocate channel for maintenance type disk;


Change backupset 989 delete;

4. Chequear que el/los backups hayan sido borrados volviendo a listar

List backup;

5. Use Sqlplus para conectarse al catalogo y ejecute el query con el Id del primer
paso.

SQL> select db_key, db_id from db where db_id = xxxxxxxxxx;

6. Ejecute el comando para borrar la registracin con los datos obtenidos en el paso
anterior.

SQL> execute dbms_rcvcat.unregistrerdatabase(bd_key, db_id);

Reseteo del Catlogo


Antes de utilizar Rman con una base target que fue abierta con Resetlogs, debe
resetear la incarnatio de la base. El comando reset database, crea una nueva
incarnation en el catlogo.
Si abre una base con Resetlogs y no resetea la base, Rman no puede acceder al
catlogo.

Reseteo del catlogo a una incarnation anterior

1. Identifique la clave primaria de la incarnation. Obtendr la clave con un list.


List incarnation;

2. Resetee a la incarnation que desea con:


Reset database to incarnation 2;

3. Luego de esto, podr realizar el restore y recover de la incarnation anterior y


abrirla con resetlogs. Por ejemplo:

Autor: : Paula Sajoux Confidencial de la Versin : 1.0


Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 19 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

Run {
Allocate channel ch1 type disk;
Restore database;
Recover database;
Alter database open resetlogs;
}

Reseteo del catlogo luego de un recovery incompleto


Si la base target fue recuperada a un momento en el pasado, la base debe ser
abierta con la opcin resetlogs, rman no va a poder utilizar al catlogo hasta que
ejecute el comando reset database. Esto ayuda a que Rman distinga entre un
resetlogs y un restore accidental de un control file viejo.
Ex:
Rman> reset database;

Cambio de disponibilidad de un backup o una copia


La opcin unavailable se usa cuando un backup o copia no puede ser encuentrada o
se migr a otro site. Un archivo que est marcado como unavailable no puede ser
utilizado para un restore o un recover. Si el archive se quiere utilizar y est disponible
en el equipo, se le debe indicar a Rman que est disponible.

Para cambiar a unavailable:


-0 change datafilecopy '/oracle/backup/cf_c.f' unavailable;
-1 change backupset 12 unavailable;

Para cambiar a available:


-2 change datafilecopy '/oracle/backup/cf_c.f' available;
-3 change backupset 12 available;

Chequeo cruzado del Repositorio


Debido a que los backups o copias pueden desaparecer del disco o el mismo puede
estar currupto, el repositorio de Rman puede tener actualizada esta informacin. Para
asegurarse de que los backups sets e image copies del Catlogo estn sincronizadas
con los correspondientes datos en disco o en cinta debe hacer un crosscheck.

La tabla explica las diferencias entre los comandos crosscheck:

Autor: : Paula Sajoux Confidencial de la Versin : 1.0


Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 20 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

Comando Necesita catalogo Objetivo


Change.crossc Slo para backupset y Verifica que los backups o imgenes
heck backuppiece existan. Si Rman no puede encontrar los
backuppiece, los marca como expirados.
Marca todos los otros tipos de archivos
(image copies y archive redo logs) como
borrados (delete).
Crosscheck No Verifica que los backups estn en el disco
backup o cinta. Este comando chequea solo
backup sets. Marca los backups
encontrados como available y los otros
como expirados.

Borrado de Backups y copias actualizando el estado en el Repositorio

Funcionalidad de comandos de mantenimiento y scripts

Comando o Necesita Objetivo


Script catalogo
Change Si Borra un registro de un backup especfico del catlogo.
uncatalog Este comando no realiza el borrado fsico del archivo.
Prgrmanc.sql Si Borra todos los registros de backups o copias cuyo
estado sea delete del catlogo. Se usa despus de un
crosscheck.
Delete expired Si Borra los registros de backup sets que expiraron del
backup repositorio.
Changedelete No Su usa para borrar los archivos fsicos y eliminar del
catlogo.
Backup No Si el catlogo est en una versin inferior a 8.1.6,
archivelog borra los archives y marca los registros del catalogo
delete input con delete.
Si el catlogo es compatible con 8.1.6 o superior, borra
los archives y sus registros en el catlogo.
$ORACLE_HOM No Borra fsicamente los backups sets, image copies y
E/rdbms/demo/rm archive y tambin del repositorio o los marca con
an1.sh delete.
Change .. Si Marca el registro del backup como no disponible.
unavailable
Autor: : Paula Sajoux Confidencial de la Versin : 1.0
Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 21 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

Borrado fsico de backups o copias y borrado del repositorio

1. Chequeo de backups expirados.


List backup of database archivelog all; (lista los backups de los
datafiles y los archives)
List copy;

2. Aloque un canal del tipo delete


Allocate channel for delete type disk;

3. Ejecute el comando changedelete


Change backuppiece 120 delete;
Change controlfilecopy 63 delete;
Change archivelog until logseq = 300 delete;

4. Release channel
Release channel;

Borrado de registros de backups expirados del catlogo


Necesita utilizar el catlogo

1. Opcionalmente puede realizar un crosscheck

2. Alocar canal del tipo delete


Allocate channel for delete type disk;

3. Ejecute el comando delete expired backup.


Delete expired backup;

4. Release el canal
Release channel;

Autor: : Paula Sajoux Confidencial de la Versin : 1.0


Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 22 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

Borrado de registros de image copy y archive redo log sin borrado fsico

1. Chequee la existencia de copias expiradas usando list


List;

2. Ejecute el comando changeuncatalog


Change controlfilecopy '/oracle/cf_c.f' uncatalog;
Change datafilecopy '/oracle/cf_1_c.f' uncatalog;
Change datafilecopy 3333' uncatalog;

3. Release channel
Release channel;

4. Verificar consultando las vistas rc_datafile_copy o rc_controlfile_copy con el id


borrado:
Por ejemplo:
Select cdf_key, status from rc_datafile_copy where cdf_key = 3333;

Borrado de todos los registros del catlogo con estado delete

1. Entre al Sqlplus conectado al catlogo


Sqlplus rman/rman@RCAT

2. Corra el query $ORACLE_HOME/rdbms/admin/prgrmanc.sql


@prgrmanc

Validacin del Restore de backups o copias

Una validacin del restore, realiza corre un test del restore de los archivos, es decir
que valida que el restore funcione.

1. Listar los backups sets con:


List of backup sets;

2. Use la clave primaria para la validacin:


Run {
Allocate channel c1 type disk;
Validate backup set 999;

Autor: : Paula Sajoux Confidencial de la Versin : 1.0


Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 23 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

Si no hay mensajes de errores, el backup esta disponible para la recuperacin.

Recovery del Catlogo:

Para recuperar la base que contiene el catlogo hay que considerar lo siguiente:
-0 Crear una base con el backup previo de la base del catlogo.
-1 Puede querer poner el catlogo en otra base. En esa base debe crear un usuario
y darle el privilegio recovery_catalog_owner. Luego debe importar los datos de
un export previo del catlogo en el esquema del nuevo usuario.
-2 Puede crear una base nueva e importar los datos.
-3 Cuando se recupern el catlogo se debe realizar una resincronizacin del
catlogo con el controlfile de la base target.
-4 Durante el resync, Recovery Manager puede agregar registros de archivos que ya
no existan porque los archivos que cataloga no son verificados. Borre dichos
archivos con el comando change . Uncatalog.

Manejo de Scripts

Creacin
1. Ingrese a Rman connectado a la base del catlogo.
Rman catalog rman/rman@RCAT

2. Crear el script
Create script xxx {
Allocate channel ch1 type disk;
Allocata channel ch2 type disk;
Backup database;
};

Autor: : Paula Sajoux Confidencial de la Versin : 1.0


Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 24 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

Ejecucin
1. Ingrese a Rman connectado a la base del catlogo.
Rman catalog rman/rman@RCAT

2. Corra el run
Run [ execute script xxxx ; }

Actualizacin de un script
1. Ingrese a Rman connectado a la base del catlogo.
Rman catalog rman/rman@RCAT

2. Corra el replace
Replace script xxxx {
Allocate channel ch1 type disk;
Backup database;
}

Borrado de un script
delete script xxx;

Impresin de un script
print script xxx;

Listado de los scripts guardados


1. Connectarse al Sqlplus al catlogo.
Sqlplus rman/rman@RCAT

2. Select script_name from rc_stored_script;

Autor: : Paula Sajoux Confidencial de la Versin : 1.0


Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 25 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

Resincronizacin del Catlogo


Cuando RMAN realiza una resincronizacin compara el Catlogo con el control file y
lo actualiza con la informacin faltante o la que cambi.
Una resincronizacin puede ser total o parcial. En una parcial, RMAN lee el control
file y actualiza los cambios, pero no resincroniza metadatos sobre el esquema de la
base: datafiles, tablespaces, redo threads, rollback segments (slo si la base est
abierta), online redo logs. En una resincronizacin full o total, RMAN actualiza todos
los registros con cambios, incluyendo el esquema de la base de datos.

Se realiza un resync full o parcial cuando se ejecutaron uno de estos comandos:

backup, copy, crosscheck (8i), delete expired backupset (8i), duplicate (8i), list,
recover, report, restore and switch.

Cuando resincronizar

Se debe resincronizar el catlogo cuando se modifica la estructura fsica de la base


de datos target.
Un cambio de estructura se realiza cuando:
-0 Se agrega o elimina un tablespace
-1 Se agrega un datafile a un tablespace
-2 Se agrega o elimina un rollback segment

Resincronizacin full:

1. Utilice rman para conectarse al catlogo y al target.


set ORACLE_SID=target_db
rman target / rcvcat rman/rman@rcat

2. Ejecute el comando de resincronizacin:


Rman> Resync catalog;

La operacin de resync puede setearse como un job de UNIX o NT o si utiliza


Enterprise Manager esto puede programarse como un job en el repositorio de EM. Si
existen tablespace que se autoextienden y redo log files se switchean
frecuentemente el intervalo del resync debe ser seteado para minimizar la prdida de
las actualizaciones.

Autor: : Paula Sajoux Confidencial de la Versin : 1.0


Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 26 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

Generacin de Reportes

Existen 2 comandos para la emisin de reportes de backups: list y report. El comando


report brinda informacin ms detallada.

Generacin de reportes con List


El objetivo principal es conocer que backups o copias estn disponibles. Por ejemplo:

-0 Todos los backups (backup sets y proxy copies) o imgenes grabados en el


repositorio.
-1 Backups o imgenes de una base determinada, tablespace, datafile, archive log,
controlfile.
-2 Backups o imgenes filtrado por tiempo, path, device, tag o recoverability.

Para generar una lista de los backups e imgenes:

1. Ingresar a rman y conectarse con la base target y el repositorio.


Rman target / rcvcat rman/rman@RCAT

2. Ejecutar list copy o list backup


List copy of database archivelog all; Lista los datafiles y archivelogs
backapeados.

List backup; Lista los backup sets, backup pieces o proxy copies

Para generar una lista de los backups e imgenes restringido por objeto:

-0 Para listar los backups de todos los archivos de una base:


list backup of database;

-1 Para listar los backups de un datafile en particular:


list backup of datafile '/u01/oradata/PRU/pp.dbf';

-2 Para listar los backups de un tablespace en particular:


list backup of tablespace system;

Autor: : Paula Sajoux Confidencial de la Versin : 1.0


Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 27 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

-3 Para listar los backups de un archives y redo:


list backup of archivelog all;

-4 Para listar los backups del controlfile:


list backup of controlfile;

Para listar con otras restricciones:

-5 Para listar por Tag o etiqueta:


list backup tag 'weekly_full_backup';

-6 Para listar por nombre de archivo:


list backup like '/oracle/backup/tns_4%';

-7 Para listar por Tiempo:


list backup of archivelog all until time ''sysdate-30';
list copy of datafile 4 complete between '10-dec-01' and '30-dec-01';

Generacin de reportes con Report

Un reporte puede informar:


-8 Archivos necesitan ser resguardados.
-9 Archivos no han sido resguardados recientemente.
-10 Archivos son irrecuperables
-11 Backups o copias que son obsoletas y pueden ser borradas
-12 Esquema de la base anterior
-13 Backups que fueron realizados a disco o a cinta

Reporte de objetos que necesitan un backup

1. Ingresar a rman y conectarse con la base target y el repositorio.


Rman target / rcvcat rman/rman@RCAT

2. De ser necesario realizar un crosscheck para actualizar el estado de los backups:


Allocate channel for maintenance type disk;
Crosscheck backup;
Release channel;

Autor: : Paula Sajoux Confidencial de la Versin : 1.0


Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 28 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

3. Utilice need backup para identificar que archivos necesitan un backup. Por
ejemplo:
Report need backup days=7;
Report need backup days=30 tablespace system;
Report need backup days=14 datafile '/oracle/dbs/tbs_5.f';

Reportes de backups obsoletos

1. Ingresar a rman y conectarse con la base target y el repositorio.


Rman target / rcvcat rman/rman@RCAT

2. De ser necesario realizar un crosscheck para actualizar el estado de los backups:


Allocate channel for maintenance type disk;
Crosscheck backup;
Release channel;

3. Utilice obsolete para identificar que archivos que no se necesitan para un recover.
Por ejemplo:
Report obsolete redundancy = 2; lista backups que tienen 2 por lo menos 2
copias mas recientes.

4. Usar el until para chequear los backups obsoletos anteriores a una fecha, SCN o
secuencia de log determinada.

Report obsolete redundancy = 2 until time 'sysdate-12';


Report obsolete redundancy = 2 until scn 1000;
Report obsolete redundancy = 2 until logseq =121 thread =1;

5. Utilice la opcin orphan para listar los backups o copias que no se pueden usar
debido a que pertenecen a otra incarnation.
Report obsolete orphan;

6. Examine los reportes y borre los backups que estn obsoletos.


Por ej:
Allocate channel for delete type disk;
Change backuppiece '/oracle/sfasffafasf.sa' delete;

Autor: : Paula Sajoux Confidencial de la Versin : 1.0


Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 29 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

Reporte de backups irrecuperables

1. Ingresar a rman y conectarse con la base target y el repositorio.


Rman target / rcvcat rman/rman@RCAT

2. Utilice la opcin unrecoberable para detectar los datafiles que realizaron una
opcin irrecuperable contra un objeto del datafile desde el ltimo backup.
Report unrecoverable database;

Reporte de esquema de la base de datos a un punto en el tiempo


1. Ingresar a rman y conectarse con la base targer y el repositorio.
Rman target / rcvcat rman/rman@RCAT

Si desea que la salida vaya a un archivo de logs:


Rman target / catalog rman/rman@RCAT log='archivo.log'

2. Liste el esquema:
Report schema;
Report schema until time 'sysdate-14';
Report schema until scn 1000;
Report schema until logseq 10;

Report Schema muestra donde esta resguardado cada tablespace

List backup;

Vistas
Conectarse con Sqlplus con usuario rman.
Vistas:
-0 rc_database
-1 rc_database_incarnation
-2 rc_tablespace
-3 rc_datafile
-4 rc_stored_script
-5 rc_stored_script_line
-6 Rc_backup_controlfile
Autor: : Paula Sajoux Confidencial de la Versin : 1.0
Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 30 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

-7 Rc_backup_datafile
-8 Rc_backup_piece
-9 Rc_backup_set
-10 Rc_redo_log
-11 Rc_redo_thread

Otros comandos

SET_RUN_OPTIONS

MAXCORRUPT FOR DATAFILE 'file_name' to integer


Define el mximo nmero de bloques corruptos para un datafile o un grupo de datafiles. El default de
Oracle es 0, es decir que no permite ningun bloque corrupto.

ARCHIVELOG DESTINATION TO 'destino'


Sobreescribe el destino de los archives redo log por default por el definido.

UNTIL clause
Setea un SCN, log sequence o fecha hasta la cual se quiere realizar un recovery.

DUPLEX ON/OFF/integer
Especifica si se debe duplicar el backup. Define la cantidad de veces que se debe copiar cada backup
piece.

COMMAND ID TO 'string' ch
Define que sesin del servidor corresponde a cada canal para poderlo controlar con v$session y
v$process.
Por ejemplo:
SELECT sid, spid, client_info FROM v$process p, v$session s
WHERE p.addr = s.paddr AND client_info LIKE '%id=rman%';

AUTOLOCATE ON/OFF

LIMIT CHANNEL channel_id


KBYTES = integer
READRATE = i nteger
MAXOPENFILES = integer

Autor: : Paula Sajoux Confidencial de la Versin : 1.0


Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 31 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

Troubleshooting Rman

Mensajes de Errores

Rangos de mensajes de errores

Rango Causa
9000.9999Command line interpreter
9000.10000Keyword analyzer
9000.10001Syntax analyser
9000.10002Main Layer
9000.10003Services Layer
9000.10004Compilation of restore or recover command
9000.10005Compilation of duplicate command
9000.10006General Compilation
90017000-7999 General execution
9001.9999PL/SQL programs
9001.10000Low-level keyword analyser
900210000-10999 Server-side execution
11000-11999 Interphase errors between PL/SQL and Rman
20000-20999 Recovery catalog packages

Escenarios

Falla en Backup Fails error rman-6089


En este escenario se realizan backup incrementales. Como rman puede utilizar
los backups incrementales en vez de aplicar los redo logs para realizar la
recuperacin, se utiliz el sistema operativo para borra los archived logs
Autor: : Paula Sajoux Confidencial de la Versin : 1.0
Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 32 de 33
Documento
Documento sobre Rman
Gerencia de Tecnologa
Direccin de Tecnologa Informtica

despus de realizar el backup. La siguiente vez que realiza un backup da el


siguiente error:
RMAN-6089: archive log NAME not found or out of sync with catalog

Diagnstico:
Esto ocurre cuando se borraron los archived log con comandos del sistema
operativo, y Rman desconoce esto. Rman intenta resguardar un log que ya no
est.

Solucin:
La solucin ms sencilla es especificar al realizar el backup que borre los logs
luego del mismo con el siguiente comando:

backup archivelog all delete input;

La segunda solucin actualizar la informacin que hay en el catlogo de rman


de los archives con el siguiente comando:

change archivelog all crosscheck;

Si el parmetro compatible est seteado con 8.1.5 o ms bajo, solo marca los
registros del catlogo con el estado delete. Si el parmetro compatible est
seteado con 8.1.6 o ms alto, borra los registros del repositorio.

RMAN Cannot Locate an Archived Log

Autor: : Paula Sajoux Confidencial de la Versin : 1.0


Compaa
Organizacin : TP Estado : Parcial
Doc-ID : Fecha emisin : 15/10/02
Tipo : Pgina 33 de 33
Documento

Das könnte Ihnen auch gefallen