Sei sulla pagina 1di 30

Implementacin de Recovery Manager

(RMAN)

REDS CONSULTING SERVICES

Elabor: Ing. Eric Castaeda Caballero


Fecha de elaboracin: Noviembre, 2008

Revis: Manuel Guerreo

REDS CONSULTING SERVICES Internal Use Only


Implementacin de Recovery Manager (RMAN)

TABLA DE CONTENIDO

INTRODUCION....2

OBJETIVO.....3

DIAGRAMA INICIAL......................................................................................................4

CONFIGURACIN DE NETWORK FILE SYSTEM (NFS)..........................................5

CONFIGURACIN DE LOS PARMETROS DE LA BASE DE DATOS (TARGET)


QUE AFECTAN LA OPERACIN DE RMAN. (PREREQUISITOS).
(ORCAAP)........................................................................................................................7

CONFIGURACIN DE LA BASE DE DATOS PARA RESPALDOS Y RECUPERACIN


...........................................................................................................................................9

DEFINICIN DE LA BASE DE DATOS DEL RECOVERY CATALOG (RECOVERY01)


.........................................................................................................................................13

CREACIN DEL RECOVERY CATALOG (RECOVERY01)......................................15

REGISTRO DE LA BASE DE DATOS CON EL RECOVERY CATALOG


(RECOVERY01).............................................................................................................16

SINCRONIZACIN DEL RECOVERY CATALOG.....................................................17

SCRIPTS PARA RESPALDOS, RESTAURACION Y RECUPERACION..................18

REDS CONSULTING SERVICES Internal Use Only 1


Implementacin de Recovery Manager (RMAN)

INTRODUCCION.

Dado la pronta liberacin del sistema ERP de Oracle dentro de la empresa Tecnologa
Especializada Asociada de Mxico (TEAM), esta se ve necesitada de una solucin que
permita mantener la seguridad de su informacin, permitindole una rpida recuperacin de
sus datos en caso de alguna contingencia. La solucin a implementar es Recovery Manager
(RMAN), una utilera de la Base de Datos recomendada por Oracle Corporation como
mtodo preferente para respaldos y recuperaciones. RMAN provee opciones para respaldos,
restauracin y recuperacin de la Base de Datos, manejando conceptos de Alta
Disponibilidad y Recuperacin de desastres.

REDS CONSULTING SERVICES Internal Use Only 2


Implementacin de Recovery Manager (RMAN)

OBJETIVO.

Implementar Recovery Manager (RMAN) en los servidores de la empresa Tecnologa


Especializada Asociada de Mxico (TEAM) con la finalidad de proveerles con un mtodo
que les permita realizar respaldos de la Base de Datos de su ambiente productivo, as como
una recuperacin ante un fallo. El siguiente documento presenta la informacin necesaria
para poder llevar a cabo la implementacin de RMAN en cualquiera de los servidores que
la empresa TEAM desee. Para le realizacin de este documento se tom como base las
pruebas que se realizaron directamente con el cliente, cabe mencionar que todas las pruebas
se realizaron en un ambiente no productivo.

REDS CONSULTING SERVICES Internal Use Only 3


Implementacin de Recovery Manager (RMAN)

DIAGRAMA INICIAL.

Respaldos
RMAN depositar los backup
sets (respaldos) en una carpeta
SAN montada sobre el servidor
NF ORCAAP, de tal manera que los
S backup sets se almacenen
fsicamente en el servidor
Respaldos
RECOVERY01

NFS
/RMAN_Exp
ORCAAP /BackupPROD
193.168.42.15
(Base de Datos
de Produccin)

STAND BY
DATABASE

RECOVERY01
193.168.42.12
(Catlogo de RMAN)

No Implementado

REDS CONSULTING SERVICES Internal Use Only 4


Implementacin de Recovery Manager (RMAN)

CONFIGURACIN DE NETWORK FILE SYSTEM (NFS).

Las siguientes modificaciones son necesarias para la configuracin del network file system
(NFS), esta configuracin deber estar presente antes de la ejecucin de RMAN.

1. Configuracin del Servidor de NFS (RECOVERY01).

a. Crear la carpeta que se desea exportar, en este documento se manejar la carpeta


RMAN_Exp, ubicada en el directorio raz (/).

b. Configurar los permisos correspondientes a la carpeta.

c. Agregar la siguiente lnea al archivo exports, ubicado en la siguiente ruta: /etc.

/RMAN_Exp *(rw,no_root_squash)

d. Ejecutar el siguiente comando:

exportfs -avr

e. Verificar que los siguientes servicios se encuentren en ejecucin.

nfs.
nfslock.
portmap.

Para poder verificar el status de los servicios se utilizar el siguiente comando:

service nfs status


service nfslock status
service portmap status

En caso de que no todos los servicios se encuentren en ejecucin, ser necesario


iniciarlos, para esto se recomienda la siguiente ejecucin de comandos.

service nfs stop


service nfslock stop
service portmap stop
service portmap start
service nfslock start
service nfs start

f. Configurar el sistema operativo para que inicie estos servicios al arrancar.

REDS CONSULTING SERVICES Internal Use Only 5


Implementacin de Recovery Manager (RMAN)

2. Configuracin del Cliente de NFS (ORCAAP).

a. Crear la carpeta sobre la que se desea montar la carpeta exportada, en este


documento se manejar la carpeta RMAN_Exp, ubicada en el directorio raz (/). Se
recomienda que la carpeta sobre la que se montar tenga el mismo nombre que la
carpeta exportada.

b. Configurar los permisos correspondientes a la carpeta creada.

c. Agregar la siguiente lnea al archivo fstab, ubicado en la siguiente ruta: /etc.

193.168.42.8:/RMAN_Exp /RMAN_Exp nfs rw,auto 00

d. Verificar que los siguientes servicios se encuentren en ejecucin.

nfs.
nfslock.
portmap.

Para poder verificar el status de los servicios se utilizar el siguiente comando:

service nfs status


service nfslock status
service portmap status

En caso de que no todos los servicios se encuentren en ejecucin, ser necesario


iniciarlos, para esto se recomienda la siguiente ejecucin de comandos.

service nfs stop


service nfslock stop
service portmap stop
service portmap start
service nfslock start
service nfs start

e. Configurar el sistema operativo para que inicie estos servicios al arrancar.

f. Reiniciar el servidor.

NOTA:
En caso de no reiniciar el servidor, ser necesario montar la carpeta utilizando el
comando mount.

REDS CONSULTING SERVICES Internal Use Only 6


Implementacin de Recovery Manager (RMAN)

CONFIGURACIN DE LOS PARMETROS DE LA BASE DE DATOS (TARGET)


QUE AFECTAN LA OPERACIN DE RMAN. (PREREQUISITOS).
(ORCAAP).

1. Las siguientes variables de ambiente debern ser establecidas para el correcto


funcionamiento de RMAN.

a. ORACLE_SID
b. ORACLE_HOME
c. PATH
d. NLS_LANG
e. NLS_DATE_FORMAT.

Actualmente el servidor que almacena la Base de Datos a respaldar presenta los


siguientes valores para las variables antes mencionadas.

ORACLE_SID = "PROD"

ORACLE_HOME = "/DB01/labdb/9.2.0"

PATH="/DB01/labdb/9.2.0/bin:/usr/bin:/usr/sbin:/DB01/labdb/9.2.0/jre/1.4.2/bin:
/usr/ccs/bin:/bin:/usr/bin/X11:/usr/local/bin:$PATH"

NLS_LANG="American_America.UTF8"

NLS_DATE_FORMAT="DD-MON-RR"

2. Creacin del archivo spfile (En caso de no existir).

a. Conectarse a la Base de Datos con un usuario con privilegio de SYSDBA,


posteriormente ejecutar el siguiente comando:

CREATE SPFILE FROM PFILE;

b. Dado que la Base de Datos inicialmente trabajaba con el archivo initSID.ora


ser necesario bajar la Base de Datos.

SHUTDOWN IMMEDIATE;

c. Modificar el archivo initSID.ora asegurando que la nica lnea que contenga


sea la siguiente:

SPFILE=/ruta donde se creo el archivo spfileSID.ora/spfileSID.ora

REDS CONSULTING SERVICES Internal Use Only 7


Implementacin de Recovery Manager (RMAN)

Por default el archivo spfileSID.ora se crea o localiza en la siguiente ruta:


$ORACLE_HOME/dbs

d. Levantar la Base de Datos.

STARTUP;

3. Se deber contar con acceso a la Base de Datos con privilegio de SYSDBA.

a. Localmente, va Autentificacin Sistema Operativo.


b. Remotamente, va Archivo de Passwords.

Para crear el Archivo de Passwords, ser necesario ejecutar el siguiente comando


desde la ubicacin $ORACLE_HOME/bin como el usuario propietario de la Base de
Datos, o bien como un usuario miembro del grupo dba:

orapwd file=orapwdsidname password=password entries=n

En donde:

sidname: SID de la Base de Datos.


password: El password que es usado para el usuario SYS.
n: El mximo nmero de esquemas permitidos en el Archivo de Passwords.

Una vez creado el Archivo de Passwords ser necesario habilitar la autenticacin


remota, para esto ser necesario ejecutar el siguiente comando como usuario de la
Base de Datos con privilegios administrativos.

ALTER SYSTEM SET remote_login_passwordfile=exclusive


SCOPE = spfile;

STARTUP FORCE;

REDS CONSULTING SERVICES Internal Use Only 8


Implementacin de Recovery Manager (RMAN)

CONFIGURACIN DE LA BASE DE DATOS PARA RESPALDOS Y


RECUPERACIN.

1. Configuracin de la Base de Datos en modo archivelog.

a. Conectarse a la Base de Datos como usuario system.

b. Determinar el estado actual de la Base de Datos mediante el siguiente


comando:

SELECT log_mode FROM v$database;

El resultado de este comando deber mandar ARCHIVELOG o


NOARCHIVELOG.
Para la elaboracin de este documento se supone que la Base de Datos se
encuentra en modo NOARCHIVELOG.

c. Conectarse a la Base de Datos como usuario sys con la clusula de sysdba.

d. Utilizar el siguiente comando para bajar la Base de Datos:

SHUTDOWN IMMEDIATE;

e. Utilizar el siguiente comando para montar la Base de Datos:

STARTUP MOUNT;

NOTA: Es necesario estar conectado a la Base de Datos como usuario sys


con la clusula de sysdba.

f. Colocar la Base de Datos en Modo Archivelog mediante el siguiente


comando:

ALTER DATABASE archivelog;

g. Para verificar que la Base de Datos efectivamente se encuentre en modo


Archivelog ejecutaremos nuevamente el siguiente comando:

SELECT log_mode FROM v$database;

h. Abrir la Base de Datos utilizando el siguiente comando:

ALTER DATABASE open;

i. Ejecutar el siguiente comando para verificar que el parmetro Automatic


archival se encuentre habilitado:

REDS CONSULTING SERVICES Internal Use Only 9


Implementacin de Recovery Manager (RMAN)

ARCHIVE LOG LIST;

j. En caso de que el parmetro anterior se encuentre deshabilitado ser


necesario ejecutar el siguiente comando para habilitarlo:

ALTER SYSTEM SET log_archive_start=TRUE


SCOPE=spfile;

STARTUP force;

2. Configuracin de los parmetros log_archive_dest.

a. Determinar la ruta donde los archivos archivelog sern generados.

b. Conectarse a la Base de Datos con un usuario con privilegios


administrativos.

c. Ejecutar el siguiente comando:

ALTER SYSTEM SET log_archive_dest_1 = location=/ruta donde los


archivos archivelog sern generados
SCOPE=spfile;

STARTUP FORCE;

d. En caso de desear agregar ms rutas destino ser necesario modificar los


siguientes parmetros:

log_archive_dest_n

En donde n es un nmero del 1 al 10.

3. Proteccin de los archivos online redo logs.

a. Verificar los miembros y las rutas donde se encuentran los archivos log files.

SELECT * FROM v$logfile;

b. Verificar los grupos y miembros para cada uno de los grupos

SELECT * FROM v$log.

c. Utilizar el siguiente comando para crear un nuevo logfile group:


ALTER DATABASE ADD LOGFILE GROUP n
('RUTA')
REDS CONSULTING SERVICES Internal Use Only 10
Implementacin de Recovery Manager (RMAN)

SIZE m;

En donde:

n = Nmero correspondiente de grupo que se desea crear.


RUTA = Ubicacin donde se generar el file log correspondiente al grupo,
deber incluir el nombre del archivo
m = Tamao del Archivo

NOTA: Se recomienda ampliamente que el tamao del archivo sea del


mismo tamao para todos los grupos.

Ejemplo:

alter database add logfiles group 3


('/DB01/labdata/log03a.log')
size 10M;

d. Utilizar el siguiente comando para agregar un nuevo miembro a un grupo


existente:

ALTER DATABASE ADD LOGFILE MEMBER


'RUTA'
TO GROUP n;

En donde:

RUTA = Ubicacin y nombre del archivo que se generar, correspondiente al


grupo.
n = Numero de grupo al cual se desea generar el miembro.

Ejemplo:

alter database add logfile member


'/DB01/labdata/log03b.log'
to group 3;

4. Proteccin del archivo controlfile.

a. Verificar la ubicacin de los archivos controlfile.

SELECT * FROM v$controlfile;

b. Ejecutar el siguiente comando para dar de baja la Base de Datos:


SHUTDOWN IMMEDIATE;

REDS CONSULTING SERVICES Internal Use Only 11


Implementacin de Recovery Manager (RMAN)

c. Con herramientas del sistema operativo, hacer una o varias copias de


algunos de los archivos (controlfile) mostrados en el punto anterior,
colocndolos en la ubicacin que se desee.

Ejemplo:

cp cntrl03.dbf /ora_labdata/labdata/cntrl04.ctl

d. Ejecutar el siguiente comando para levantar la Base de Datos en modo


Nomount.

STARTUP NOMOUNT;

e. Ejecutar el siguiente comando para modificar el parmetro control_files:

ALTER SYSTEM SET control_files =


<"ubicacin y nombre del archivo controlfile_1">,
<"ubicacin y nombre del archivo controlfile_2">,
<" ubicacin y nombre del archivo controlfile_3">,
<" ubicacin y nombre del archivo controlfile que se desea agregar>"
SCOPE = spfile;

Ejemplo:

alter system set control_files=


"/DB01/labdata/cntrl01.dbf",
"/DB01/labdata/cntrl02.dbf",
"/DB01/labdata/cntrl03.dbf",
"/ora_labdata/labdata/cntrl04.ctl"
scope=spfile;

f. Ejecutar el siguiente comando para levantar la Base de Datos:

STARTUP FORCE;

REDS CONSULTING SERVICES Internal Use Only 12


Implementacin de Recovery Manager (RMAN)

DEFINICIN DE LA BASE DE DATOS DEL RECOVERY CATALOG


(RECOVERY01).

1. Ubicacin Fsica del Catalogo.

Se recomienda ampliamente colocar la Base de Datos del Catalogo en un servidor


diferente al que almacena la Base de Datos que se desea respaldar mediante RMAN.

Para este caso, la Base de Datos a respaldar mediante RMAN se encuentra ubicada
en el servidor ORCAAP con la siguiente direccin IP: 193.168.42.15, mientras que
el servidor que almacenar la Base de Datos del Recovery Catalog es
RECOVERY01 cuya direccin IP es la siguiente: 193.168.42.12.

2. Versin de Catlogo.

Se recomienda ampliamente que la versin de la Base de Datos que almacenar el


Recovery Catalog sea creada con la ltima versin de Oracle que se encuentre en el
ambiente productivo.

Para este caso el servidor que contiene la Base de Datos a respaldar es versin:
9.2.0.6.0, mientras que el servidor que almacenara la Base de Datos del Recovery
Catalog ser versin: 9.2.0.4.0.

3. Tamao de Recovery Catalog.

El tamao de la Base de Datos que almacenar el Recovery Catalog depender


parcialmente del nmero de Bases de Datos a respaldar mediante RMAN.
A continuacin se muestran los requerimientos mnimos de espacio para la
configuracin del Recovery Catalog.

a. System Tablespace: 200MB


b. Temporary Tablespace: 20MB
c. Rollback/Undo Tablespace: 20MB
d. Tablespace para el esquema de Catlogo: 20MB
e. 3 grupos con 2 miembros cada uno para los online redo logs.

4. Creacin del Tablespace que almacenar el Recovey Catalog.

Para esto, se ejecutar el siguiente comando:

CREATE TABLESPACE <nombre del tablespace>


DATAFILE <nombre y ruta en donde se ubicar el datafile correspondiente>
SIZE <Tamao del datafile correspondiente>;

Ejemplo:

CREATE TABLESPACE recover_tbs


REDS CONSULTING SERVICES Internal Use Only 13
Implementacin de Recovery Manager (RMAN)

DATAFILE /oracle/oradata/RECOVER/recover_tbs_01.dbf
SIZE 50M;

5. Creacin del usuario propietario del Recovery Catalog.

Para esto, se ejecutar el siguiente comando:

CREATE USER <nombre del usuario propietario del Recovery Catalog>


IDENTIFIED BY <password>
DEFAUL TABLESPACE <nombre del tablespace que almacena el Recovery
Catalog>
TEMPORARY TABLESPACE <nombre del tablespace temporal>
QUOTA UNLIMITED ON <nombre del tablespace que almacena el Recovery
Catalog>;

Ejemplo:

CREATE USER rman IDENTIFIED BY rman


DEFAULT TABLESPACE recover_tbs
TEMPORARY TABLESPACE temp
QUOTA UNLIMITED ON recover_tbs;

6. Otorgar privilegios/rol al usuario propietario del Recovery Catalog.

Para esto, se ejecutar el siguiente comando:

GRANT recovery_catalog_owner, resource TO <nombre del usuario propietario del


Recovery Catalog>;

Ejemplo:

GRANT recovery_catalog_owner, resource TO rman;

REDS CONSULTING SERVICES Internal Use Only 14


Implementacin de Recovery Manager (RMAN)

CREACIN DEL RECOVERY CATALOG (RECOVERY01).

1. Inicar RMAN con el siguiente comando:

./rman CATALOG <nombre del usuario propietario del Recovery


Catalog>/<password>@<nombre de la instancia donde se encuentra almacenado
el Recovery Catalog>

Ejemplo:

./rman CATALOG rman/rman@recover

Despus de un momento, RMAN se conectar y nos avisar que no existe un


Recovery Catalog instalado.

2. Desde el prompt de RMAN se ejecutar el siguiente comando:

CREATE CATALOG;

3. Salir de RMAN.

exit;

REDS CONSULTING SERVICES Internal Use Only 15


Implementacin de Recovery Manager (RMAN)

REGISTRO DE LA BASE DE DATOS CON EL RECOVERY CATALOG


(RECOVERY01).

1. Inicar RMAN con el siguiente comando:

./rman CATALOG <nombre del usuario propietario del Recovery


Catalog>/<password>@<nombre de la instancia donde se encuentra almacenado
el Recovery Catalog>

Ejemplo:

./rman CATALOG rman/rman@recover

2. Conectarse a la Base de Datos que se desea registrar.

CONNECT TARGET usuario/password@instancia

3. Desde el prompt de RMAN se ejecutar el siguiente comando:

REGISTER DATABASE;

4. Salir de RMAN.

exit;

REDS CONSULTING SERVICES Internal Use Only 16


Implementacin de Recovery Manager (RMAN)

SINCRONIZACIN DEL RECOVERY CATALOG.

1. Inicar RMAN con el siguiente comando:

./rman CATALOG <nombre del usuario propietario del Recovery


Catalog>/<password>@<nombre de la instancia donde se encuentra almacenado
el Recovery Catalog> TARGET usuario/password@instancia

Ejemplo:

./rman CATALOG rman/rman@recover TARGET usuario/password@instancia

2. Desde el prompt de RMAN se ejecutar el siguiente comando:

RESYNC DATABASE;

3. Salir de RMAN.

exit;

REDS CONSULTING SERVICES Internal Use Only 17


Implementacin de Recovery Manager (RMAN)

SCRIPTS PARA RESPALDOS, RESTAURACION Y RECUPERACION.

1. BASE DE DATOS.

a. BACKUP FULL DATABASE

CREATE SCRIPT backup_database_full


{ ALLOCATE CHANNEL t1 TYPE DISK;
BACKUP
TAG 'BACKUP_DATABASE'
DATABASE
FORMAT '/respaldos/rman/database/backup.%d.database.full.%s.%p.
%T';
BACKUP
TAG 'BACKUP_CONTROLFILE'
CURRENT CONTROLFILE
FORMAT '/respaldos/rman/controlfile/backup.%d.ctl.%s.%p.%T';
BACKUP
TAG 'BACKUP_SPFILE'
SPFILE
FORMAT '/respaldos/rman/spfile/backup.%d.spfile.%s.%p.%T';
RELEASE CHANNEL t1;
}

b. BACKUP DATABASE INCREMENTAL LEVEL 0

CREATE SCRIPT backup_database_inc_l0


{ ALLOCATE CHANNEL t1 TYPE DISK;
BACKUP INCREMENTAL LEVEL 0
TAG 'BACKUP_DATABASE_INC_L0'
DATABASE
FORMAT '/respaldos/rman/database/backup.%d.database.inc.l0.%s.%p.
%T'; BACKUP
TAG 'BACKUP_CONTROLFILE'
CURRENT CONTROLFILE
FORMAT '/respaldos/rman/controlfile/backup.%d.ctl.%s.%p.%T';
BACKUP
TAG 'BACKUP_SPFILE'
SPFILE
FORMAT '/respaldos/rman/spfile/backup.%d.spfile.%s.%p.%T';
RELEASE CHANNEL t1;
}

c. BACKUP DATABASE CUMULATIVE LEVEL 1

CREATE SCRIPT backup_database_cumulative_l1


{
REDS CONSULTING SERVICES Internal Use Only 18
Implementacin de Recovery Manager (RMAN)

ALLOCATE CHANNEL t1 TYPE DISK;


BACKUP INCREMENTAL LEVEL 1 CUMULATIVE
TAG 'BACKUP_DATABASE_CUM_L1'
DATABASE
FORMAT '/respaldos/rman/database/backup.%d.database.cum.l1.%s.%p.
%T';
BACKUP
TAG 'BACKUP_CONTROLFILE'
CURRENT CONTROLFILE
FORMAT '/respaldos/rman/controlfile/backup.%d.ctl.%s.%p.%T';
BACKUP
TAG 'BACKUP_SPFILE'
SPFILE
FORMAT '/respaldos/rman/spfile/backup.%d.spfile.%s.%p.%T';
RELEASE CHANNEL t1;
}

d. RESTORE DATABASE

CREATE SCRIPT restore_database_full


{
ALLOCATE CHANNEL t1 TYPE DISK;
RESTORE DATABASE;
RECOVER DATABASE;
SQL 'ALTER DATABASE open';
RELEASE CHANNEL t1;
}

CREATE SCRIPT restore_database_until_logseq


{
ALLOCATE CHANNEL t1 TYPE DISK;
RESTORE DATABASE;
RECOVER DATABASE UNTIL LOGSEQ 5;
SQL 'ALTER DATABASE OPEN RESETLOGS';
RELEASE CHANNEL t1;
}

CREATE SCRIPT restore_database_until_scn


{
ALLOCATE CHANNEL t1 TYPE DISK;
RESTORE DATABASE;
RECOVER DATABASE UNTIL CHANGE 4486551;
SQL 'ALTER DATABASE OPEN RESETLOGS';
RELEASE CHANNEL t1;
}

CREATE SCRIPT restore_database_until_time


REDS CONSULTING SERVICES Internal Use Only 19
Implementacin de Recovery Manager (RMAN)

{
ALLOCATE CHANNEL t1 TYPE DISK;
RESTORE DATABASE;
RECOVER DATABASE UNTIL TIME '2008-10-30:11:48:19';
SQL 'ALTER DATABASE OPEN RESETLOGS';
RELEASE CHANNEL t1;
}

2. TABLESPACE.

a. BACKUP FULL TABLESPACE

CREATE SCRIPT backup_tablespace


{
ALLOCATE CHANNEL t1 TYPE DISK;
BACKUP
TAG 'BACKUP_TBS_EXAMPLE'
TABLESPACE example
FORMAT '/respaldos/rman/tablespace/backup.%d.tbs.example.%s.%p.
%T';
BACKUP
TAG 'BACKUP_CONTROLFILE'
CURRENT CONTROLFILE
FORMAT '/respaldos/rman/controlfile/backup.%d.ctl.%s.%p.%T';
BACKUP
TAG 'BACKUP_SPFILE'
SPFILE
FORMAT '/respaldos/rman/spfile/backup.%d.spfile.%s.%p.%T';
RELEASE CHANNEL t1;
}

b. BACKUP FULL N TABLESPACES

CREATE SCRIPT backup_n_tablespace


{
ALLOCATE CHANNEL t1 TYPE DISK;
BACKUP
TAG 'BACKUP_TBS_EXAMPLE_USERS'
TABLESPACE example, users
FORMAT '/respaldos/rman/tablespace/backup.%d.tbs.example.users.%s.
%p.%T';
BACKUP
TAG 'BACKUP_CONTROLFILE'
CURRENT CONTROLFILE
FORMAT '/respaldos/rman/controlfile/backup.%d.ctl.%s.%p.%T';
BACKUP
REDS CONSULTING SERVICES Internal Use Only 20
Implementacin de Recovery Manager (RMAN)

TAG 'BACKUP_SPFILE'
SPFILE
FORMAT '/respaldos/rman/spfile/backup.%d.spfile.%s.%p.%T';
RELEASE CHANNEL t1;
}

c. BACKUP TABLESPACE CUMULATIVE LEVEL 1

CREATE SCRIPT backup_tablespace_cumulative_l1


{
ALLOCATE CHANNEL t1 TYPE DISK;
BACKUP INCREMENTAL LEVEL 1 CUMULATIVE
TAG 'BACKUP_TBS_EXAMPLE_CUM_L1'
TABLESPACE example
FORMAT '/respaldos/rman/tablespace/backup.%d.tbs.example.cum.l1.%s.
%p.%T';
BACKUP
TAG 'BACKUP_CONTROLFILE'
CURRENT CONTROLFILE
FORMAT '/respaldos/rman/controlfile/backup.%d.ctl.%s.%p.%T';
BACKUP
TAG 'BACKUP_SPFILE'
SPFILE
FORMAT '/respaldos/rman/spfile/backup.%d.spfile.%s.%p.%T';
RELEASE CHANNEL t1;
}

d. RESTORE TABLESPACE
CREATE SCRIPT restore_tablespace
{
SQL 'ALTER TABLESPACE example OFFLINE IMMEDIATE';
ALLOCATE CHANNEL t1 TYPE DISK;
RESTORE TABLESPACE 'EXAMPLE';
RECOVER TABLESPACE 'EXAMPLE';
SQL 'ALTER TABLESPACE example ONLINE';
RELEASE CHANNEL t1;
}

CREATE SCRIPT restore_n_tablespace


{
SQL 'ALTER TABLESPACE example OFFLINE IMMEDIATE';
SQL 'ALTER TABLESPACE users OFFLINE IMMEDIATE';
ALLOCATE CHANNEL t1 TYPE DISK;
RESTORE TABLESPACE 'EXAMPLE', 'USERS';
RECOVER TABLESPACE 'EXAMPLE', 'USERS';
SQL 'ALTER TABLESPACE example ONLINE';
SQL 'ALTER TABLESPACE users ONLINE';
REDS CONSULTING SERVICES Internal Use Only 21
Implementacin de Recovery Manager (RMAN)

RELEASE CHANNEL t1;


}

CREATE SCRIPT restore_tablespace_mount_db


{
ALLOCATE CHANNEL t1 TYPE DISK;
RESTORE TABLESPACE 'EXAMPLE';
RECOVER TABLESPACE 'EXAMPLE';
SQL 'ALTER DATABASE open';
RELEASE CHANNEL t1;
}

3. DATAFILE

a. BACKUP DATAFILE

CREATE SCRIPT backup_datafile


{
ALLOCATE CHANNEL t1 TYPE DISK;
BACKUP
TAG 'BACKUP_DATAFILE_EXAMPLE01.DBF'
DATAFILE
'/oracle/app/oracle/product/10.2.0/oradata/orcl/example01.dbf'
FORMAT '/respaldos/rman/datafile/backup.%d.datafile.example01.%s.
%p.%T';
BACKUP
TAG 'BACKUP_CONTROLFILE'
CURRENT CONTROLFILE
FORMAT '/respaldos/rman/controlfile/backup.%d.ctl.%s.%p.%T';
BACKUP
TAG 'BACKUP_SPFILE'
SPFILE
FORMAT '/respaldos/rman/spfile/backup.%d.spfile.%s.%p.%T';
RELEASE CHANNEL t1;
}

b. BACKUP N DATAFILES

CREATE SCRIPT backup_n_datafile


{
ALLOCATE CHANNEL t1 TYPE DISK;
BACKUP
TAG 'BACKUP_DF_EXAMPLE01_USERS01'
DATAFILE
'/oracle/app/oracle/product/10.2.0/oradata/orcl/example01.dbf',
'/oracle/app/oracle/product/10.2.0/oradata/orcl/users01.dbf'

REDS CONSULTING SERVICES Internal Use Only 22


Implementacin de Recovery Manager (RMAN)

FORMAT '/respaldos/rman/datafile/backup.
%d.datafile.example01.users01.%s.%p.%T';
BACKUP
TAG 'BACKUP_CONTROLFILE'
CURRENT CONTROLFILE
FORMAT '/respaldos/rman/controlfile/backup.%d.ctl.%s.%p.%T';
BACKUP
TAG 'BACKUP_SPFILE'
SPFILE
FORMAT '/respaldos/rman/spfile/backup.%d.spfile.%s.%p.%T';
RELEASE CHANNEL t1;
}

c. BACKUP DATAFILE CUMULATIVE LEVEL 1

CREATE SCRIPT backup_datafile_cumulative_l1


{
ALLOCATE CHANNEL t1 TYPE DISK;
BACKUP INCREMENTAL LEVEL 1 CUMULATIVE
TAG 'BACKUP_DBF_EXAMPLE_CUM_L1'
DATAFILE
'/oracle/app/oracle/product/10.2.0/oradata/orcl/example01.dbf'
FORMAT '/respaldos/rman/datafile/backup.%d.dbf.example.cum.l1.%s.
%p.%T';
BACKUP
TAG 'BACKUP_CONTROLFILE'
CURRENT CONTROLFILE
FORMAT '/respaldos/rman/controlfile/backup.%d.ctl.%s.%p.%T';
BACKUP
TAG 'BACKUP_SPFILE'
SPFILE
FORMAT '/respaldos/rman/spfile/backup.%d.spfile.%s.%p.%T';
RELEASE CHANNEL t1;
}

d. RESTORE DATAFILE

CREATE SCRIPT restore_datafile


{
SQL "ALTER DATABASE DATAFILE
''/oracle/app/oracle/product/10.2.0/oradata/orcl/example01.dbf''
OFFLINE";
ALLOCATE CHANNEL t1 TYPE DISK;
RESTORE DATAFILE
'/oracle/app/oracle/product/10.2.0/oradata/orcl/example01.dbf';
REDS CONSULTING SERVICES Internal Use Only 23
Implementacin de Recovery Manager (RMAN)

RECOVER DATAFILE
'/oracle/app/oracle/product/10.2.0/oradata/orcl/example01.dbf';
SQL "ALTER DATABASE DATAFILE
''/oracle/app/oracle/product/10.2.0/oradata/orcl/example01.dbf'' ONLINE";
RELEASE CHANNEL t1;
}

CREATE SCRIPT restore_n_datafile


{
SQL "ALTER DATABASE DATAFILE
''/oracle/app/oracle/product/10.2.0/oradata/orcl/example01.dbf'',
''/oracle/app/oracle/product/10.2.0/oradata/orcl/users01.dbf'' OFFLINE";
ALLOCATE CHANNEL t1 TYPE DISK;
RESTORE DATAFILE
'/oracle/app/oracle/product/10.2.0/oradata/orcl/example01.dbf',
'/oracle/app/oracle/product/10.2.0/oradata/orcl/users01.dbf';
RECOVER DATAFILE
'/oracle/app/oracle/product/10.2.0/oradata/orcl/example01.dbf',
'/oracle/app/oracle/product/10.2.0/oradata/orcl/users01.dbf';
SQL "ALTER DATABASE DATAFILE
''/oracle/app/oracle/product/10.2.0/oradata/orcl/example01.dbf'',
''/oracle/app/oracle/product/10.2.0/oradata/orcl/users01.dbf'' ONLINE";
RELEASE CHANNEL t1;
}

CREATE SCRIPT restore_datafile_mount_db


{
ALLOCATE CHANNEL t1 TYPE DISK;
RESTORE DATAFILE
'/oracle/app/oracle/product/10.2.0/oradata/orcl/example01.dbf';
RECOVER DATAFILE
'/oracle/app/oracle/product/10.2.0/oradata/orcl/example01.dbf';
SQL 'ALTER DATABASE open';
RELEASE CHANNEL t1;
}

CREATE SCRIPT restore_datafile_other_location


{
SQL "ALTER DATABASE DATAFILE
''/oracle/app/oracle/product/10.2.0/oradata/orcl/example01.dbf''
OFFLINE";
ALLOCATE CHANNEL t1 TYPE DISK;
SET NEWNAME FOR DATAFILE
'/oracle/app/oracle/product/10.2.0/oradata/orcl/example01.dbf' TO
'/respaldos/rman/example01.dbf';
RESTORE DATAFILE
'/oracle/app/oracle/product/10.2.0/oradata/orcl/example01.dbf';
REDS CONSULTING SERVICES Internal Use Only 24
Implementacin de Recovery Manager (RMAN)

SWITCH DATAFILE ALL;


RECOVER DATAFILE '/respaldos/rman/example01.dbf';
SQL "ALTER DATABASE DATAFILE ''/respaldos/rman/example01.dbf''
ONLINE";
RELEASE CHANNEL t1;
}

4. ARCHIVELOG

a. BACKUP ARCHIVELOG

CREATE SCRIPT backup_archivelog


{
ALLOCATE CHANNEL t1 TYPE DISK;
BACKUP
TAG 'BACKUP_ARCHIVELOG_LOGSEQ_153'
ARCHIVELOG LOGSEQ 153
FORMAT '/respaldos/rman/archivelog/backup.%d.arch.log153.%s.%p.
%T';
BACKUP
TAG 'BACKUP_CONTROLFILE'
CURRENT CONTROLFILE
FORMAT '/respaldos/rman/controlfile/backup.%d.ctl.%s.%p.%T';
BACKUP
TAG 'BACKUP_SPFILE'
SPFILE
FORMAT '/respaldos/rman/spfile/backup.%d.spfile.%s.%p.%T';
RELEASE CHANNEL t1;
}

CREATE SCRIPT backup_archivelog_all


{
ALLOCATE CHANNEL t1 TYPE DISK;
BACKUP
TAG 'BACKUP_ARCHIVELOG_ALL'
ARCHIVELOG ALL
FORMAT '/respaldos/rman/archivelog/backup.%d.arch.all.%s.%p.%T';
BACKUP
TAG 'BACKUP_CONTROLFILE'
CURRENT CONTROLFILE
FORMAT '/respaldos/rman/controlfile/backup.%d.ctl.%s.%p.%T';
BACKUP
TAG 'BACKUP_SPFILE'
SPFILE
FORMAT '/respaldos/rman/spfile/backup.%d.spfile.%s.%p.%T';
RELEASE CHANNEL t1;
}
REDS CONSULTING SERVICES Internal Use Only 25
Implementacin de Recovery Manager (RMAN)

CREATE SCRIPT backup_archivelog_all_delete


{
ALLOCATE CHANNEL t1 TYPE DISK;
BACKUP
TAG 'BACKUP_ARCHIVELOG_ALL'
ARCHIVELOG ALL DELETE INPUT
FORMAT '/respaldos/rman/archivelog/backup.%d.arch.all.%s.%p.%T';
BACKUP
TAG 'BACKUP_CONTROLFILE'
CURRENT CONTROLFILE
FORMAT '/respaldos/rman/controlfile/backup.%d.ctl.%s.%p.%T';
BACKUP
TAG 'BACKUP_SPFILE'
SPFILE
FORMAT '/respaldos/rman/spfile/backup.%d.spfile.%s.%p.%T';
RELEASE CHANNEL t1;
}

CREATE SCRIPT backup_archivelog_from


{
ALLOCATE CHANNEL t1 TYPE DISK;
BACKUP
TAG 'BACKUP_ARCHIVELOG_FROM_LOG153'
ARCHIVELOG FROM LOGSEQ 153
FORMAT '/respaldos/rman/archivelog/backup.%d.arch.from.log153.%s.
%p.%T';
BACKUP
TAG 'BACKUP_CONTROLFILE'
CURRENT CONTROLFILE
FORMAT '/respaldos/rman/controlfile/backup.%d.ctl.%s.%p.%T';
BACKUP
TAG 'BACKUP_SPFILE'
SPFILE
FORMAT '/respaldos/rman/spfile/backup.%d.spfile.%s.%p.%T';
RELEASE CHANNEL t1;
}

CREATE SCRIPT backup_archivelog_from_until


{
ALLOCATE CHANNEL t1 TYPE DISK;
BACKUP
TAG 'BACKUP_ARCHIVELOG_153_155'
ARCHIVELOG FROM LOGSEQ 153 UNTIL LOGSEQ 155
FORMAT '/respaldos/rman/archivelog/backup.%d.arch.153_155.%s.%p.
%T';
BACKUP
REDS CONSULTING SERVICES Internal Use Only 26
Implementacin de Recovery Manager (RMAN)

TAG 'BACKUP_CONTROLFILE'
CURRENT CONTROLFILE
FORMAT '/respaldos/rman/controlfile/backup.%d.ctl.%s.%p.%T';
BACKUP
TAG 'BACKUP_SPFILE'
SPFILE
FORMAT '/respaldos/rman/spfile/backup.%d.spfile.%s.%p.%T';
RELEASE CHANNEL t1;
}

CREATE SCRIPT backup_archivelog_until


{
ALLOCATE CHANNEL t1 TYPE DISK;
BACKUP
TAG 'BACKUP_ARCHIVELOG_UNTIL_LOG153'
ARCHIVELOG UNTIL LOGSEQ 153
FORMAT '/respaldos/rman/archivelog/backup.
%d.arch.until.log153.%s.%p.%T';
BACKUP
TAG 'BACKUP_CONTROLFILE'
CURRENT CONTROLFILE
FORMAT '/respaldos/rman/controlfile/backup.%d.ctl.%s.%p.%T';
BACKUP
TAG 'BACKUP_SPFILE'
SPFILE
FORMAT '/respaldos/rman/spfile/backup.%d.spfile.%s.%p.%T';
RELEASE CHANNEL t1;
}

b. RESTORE ARCHIVELOG

CREATE SCRIPT restore_archivelog


{
ALLOCATE CHANNEL t1 TYPE DISK;
SET ARCHIVELOG DESTINATION TO '/respaldos/archives';
RESTORE ARCHIVELOG FROM LOGSEQ 151;
RELEASE CHANNEL t1;
}

5. CONTROLFILE

a. BACKUP CONTROLFILE

CREATE SCRIPT backup_controlfile


{
ALLOCATE CHANNEL t1 TYPE DISK;
BACKUP
REDS CONSULTING SERVICES Internal Use Only 27
Implementacin de Recovery Manager (RMAN)

TAG 'BACKUP_CONTROLFILE'
CURRENT CONTROLFILE
FORMAT '/respaldos/rman/controlfile/backup.%d.ctl.%s.%p.%T';
BACKUP
TAG 'BACKUP_SPFILE'
SPFILE
FORMAT '/respaldos/rman/spfile/backup.%d.spfile.%s.%p.%T';
RELEASE CHANNEL t1;
}

b. RESTORE CONTROLFILE

CREATE SCRIPT restore_controlfile


{
ALLOCATE CHANNEL t1 TYPE DISK;
RESTORE CONTROLFILE;
ALTER DATABASE mount;
RECOVER DATABASE;
SQL 'ALTER DATABASE open RESETLOGS';
RELEASE CHANNEL t1;
}

6. SPFILE

a. BACKUP SPFILE

CREATE SCRIPT backup_spfile


{
ALLOCATE CHANNEL t1 TYPE DISK;
BACKUP
TAG 'BACKUP_SPFILE'
SPFILE
FORMAT '/respaldos/rman/spfile/backup.%d.spfile.%s.%p.%T';
BACKUP
TAG 'BACKUP_CONTROLFILE'
CURRENT CONTROLFILE
FORMAT '/respaldos/rman/controlfile/backup.%d.ctl.%s.%p.%T';
RELEASE CHANNEL t1;
}

b. RESTORE SPFILE

CREATE SCRIPT restore_spfile


{
STARTUP FORCE nomount;
ALLOCATE CHANNEL t1 TYPE DISK;
REDS CONSULTING SERVICES Internal Use Only 28
Implementacin de Recovery Manager (RMAN)

RESTORE SPFILE;
RELEASE CHANNEL t1;
STARTUP FORCE;
}

NOTA:

1. Cada uno de los scripts presentados en este documento, debern de ser modificados,
de tal manera que las rutas y nombres de los archivos correspondan a la Base de
Datos en cuestin y a las necesidades del cliente.

2. Cada que se realicen recuperaciones incompletas, ser necesario ejecutar el


siguiente comando dentro de la consola de RMAN.

RESET DATABASE;

3. Cada que se realicen recuperaciones de los archivos controlfile, ser necesario


ejecutar el siguiente comando dentro de la consola de RMAN.

RESET DATABASE;

REDS CONSULTING SERVICES Internal Use Only 29

Potrebbero piacerti anche