viernes, 29 de enero de 2016

Guia Rapida Backups RMAN

1. Objetivos

Manual con ejemplos básicos de uso de RMAN.

1. Conectarse al catalogo de RMAN de una BBDD determinada

[ora11g@prueba ~]$ rman target / catalog rman@rman

Recovery Manager: Release 11.2.0.1.0 - Production on Tue Feb 1 10:00:45 2011

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

connected to target database: DBA11G (DBID=337560195)
recovery catalog database Password: *****
connected to recovery catalog database

2. Crear y Configurar un catálogo de recuperación.

2.1. Configurar el catálogo de recuperación de la Base de datos

Conectarse a la BBDD para crear un tablespace nuevo
$ sqlplus /nolog
SQL> connect /as sysdba  
Conectado.
Crear un tablespace
SQL> create tablespace nuevo datafile '/database/dba11g/nuevo.dbf' size 2M autoextend on;
Tablespace creado.              

2.2. Crear el propietario del catálogo de recuperación.

SQL> create user rman   
2  identified by rman   
3  default tablespace nuevo  
4  quota unlimited on nuevo;

SQL> grant connect to rman
SQL> grant recovery_catalog_owner to rman;

2.3. Crear el catálogo de recuperación

$ rman target / catalog rman@rman
rman> create catalog;

3. Sincronizar el catálogo de recuperación

3.1. Registrar una BBDD

$ rman target / catalog rman@rman
RMAN> register database;

3.2. Desregistrar una BBDD

$ Rman target / catalog rman@rman
RMAN> unregister database;

4. Borrar catalog de recuperación

RMAN> connect catalog rman/rman@rman
RMAN> drop catalog;
RMAN> drop catalog;

5. Actualización de versión del catálogo de recuperación.

RMAN> upgrade catalog;

6. Crear y usar un catálogo virtual privado

6.1. Crear el propietario del catálogo virtual privado.

$ sqlplus /nolog
SQL> connect /as sysdba
SQL> create user user_virtual  
2  identified by uservirtual  
3  default tablespace users  
4  quota unlimited on users;

6.2. Otorgar permisos al propietario del catálogo virtual privado.

SQL> grant recovery_catalog_owner to user_virtual;
SQL> grant catalog for database dba11g to user_virtual;
SQL> grant register database to user_virtual;

6.3 Crear un catálogo virtual privado.

$ rman target / catalog user_virtual/uservirtual@rman
RMAN> create virtual catalog;

Nota: Si la versión del cliente rman es anterior a Oracle Database 11g se debe ejecutar la siguiente sentencia:
RMAN> exe rman.dbms_rcvcat.create_virtual_catalog;

6.4 Usar el catálogo virtual privado.

Registramos una base de datos para este catálogo
$ rman target / catalog user_virtual/uservirtual@rman
RMAN> register database;

VIsualizamos las bases de datos registradas
$ sqlplus  user_virtual/user_virtual@rman
SQL> Select distict db_name from dbinc;

7. Backups ( ejemplo con base de datos dba11g )

Nos conectamos a la base de datos contra el catálogo
$ export ORACLE_SID=dba11g$ 
rman target / catalog rman/rman@rman
Recovery Manager: Release 11.2.0.1.0 - Production on Fri Feb 4 09:55:30 2011
Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.
connected to target database: DBA11G (DBID=337560195)
connected to recovery catalog database

7.1 Backup completo de la BBDD (Whole Database Backup)

RMAN> backup as copy database spfile plus archivelog;

7.2 Full Backups

RMAN> backup database spfile plus archivelog;

7.3. Incremental Backups

Level 0 Incremental Backups
RMAN> backup incremental level 0 tablespace users; 

Differential Incremental Backups
RMAN> backup incremental level 1 tablespace users;

7.4 Cumulative Incremental Backups

RMAN> backup incremental level 1 cumulative tablespace users;

7.5 Comprimir backups

RMAN> backup as compressed backupset format ‘/ubicacion/ rman_%d_s%_t%_%p.bkupset’ tablespace users;

RMAN> backup as compressed backupset users;

7.6 Borrar todos los backups

RMAN> delete backup

7.7 Eliminar los backups obsoletos

RMAN> delete obsolete;
RMAN retention policy will be applied to the command
RMAN retention policy is set to recovery window of 1 days
using channel ORA_DISK_1
Deleting the following obsolete backups and copies:
-----
Deleted 17 objects

7.8 Más tipos de backup con RMAN

Backup de toda la base de datos
RMAN> backup database; 

Backup de un tablespace
RMAN> backup tablespace tbs_name;

Backup de un usuario
RMAN> backup user username; 

8. Recover/ Recuperación con RMAN

8.1 Recuperación total de una base de datos


Partimos de un ‘Whole Database Backup’ y se ha borrado toda la base de datos
 RMAN> backup as copy database spfile plus archivelog;

La recuperación se realiza de la siguiente forma:
La base de datos tiene que estar en modo nomount$sqlplus /nolog
SQL> connect /as sysdba
SQL> shutdown abort;  
SQL> startup nomount;

Recuperar la BBDD
RMAN> restore database;  
RMAN> recover database;

Montar la BBDD y abrir la base de datos con un resetlogs
SQL> alter database mount;
SQL> alter database open resetlogs;    

8.2 Recuperación de los controlfile

$ export ORACLE_SID=dba11g
$ rman target/ catalog  rman/rman@rman
RMAN> restore controlfile;

8.3 Comandos generales para recuperar la BBDD

RMAN> restore database;  
RMAN> recover database;

8.4 Comandos para la recuperación a tener en cuenta

recover database until cancel
recover database until time '2004-03-21:22:59:04'
recover database until change 123456

recover datafile 'filename' until cancel
recover datafile 'filename' until time '2004-03-21:22:59:04'
recover datafile 'filename' until change 123456

recover tablespace ts_name until cancel
recover tablespace ts_name until time '2004-03-21:22:59:04'
recover tablespace ts_name until change 123456

recover database using backup controlfile

9. Listar los backups

RMAN> list backup;
LIST BACKUP OF DATAFILE

No hay comentarios: