miércoles, 24 de noviembre de 2010

Respaldos con RMAN - Parte I

El dia de hoy me encontre un blog en donde mencionaba la mejor manera de hacer un respaldo, cuando lo empecé a leer , lo primero que menciona es crear varios scripts, uno para definir donde de encuentran nuestros datafiles, otro donde se encuentran nuestros controlfiles y otro que hace lo corre todo de modo serial, y me dejo pensando en que la persona que escribio este blog, nunca escucho de que Oracle tiene una herramienta llamada RMAN, que para lo que sirve es exactamente ahorrarnos estos pasos y a la vez brindarnos una seguridad de que nuestros respaldos sirven.
Esta entrada la dividi en varias partes, ya que aunque es una herramienta bastante sencilla de utilizar, es de gran importancia saber de que se compone, ya que eso es lo que nos va a permitir tener la seguridad de los respaldos que y puntos de recuperacion de nuestra base de datos.

Componentes Basicos
Aunque RMAN tiene mas componentes de los que voy a mencionar, los siguientes yo los consideraria como los minimos necesarios para poder tener una infraestructura segura para nuestros respaldos.
  • Cliente de RMAN
    El cliente de RMAN es la aplicacion de Oracle que maneja las operaciones de respaldos y recuperacion, este puede utilizar Oracle Net para conectarse a traves de la red, asi que puede encontrarse en un servidor distinto a la Base de Datos primaria.
  • Base de Datos Primaria (Target Database)
    Es la base de Datos que contiene los controlfiles,datafiles y en dado caso los archived redo logs que RMAN va a respaldar o restaurar.
  • Base de Datos de Catalogo y Esquema de Catalogo (Recovery and Schema Catalog Database)
    Este componente es la base de datos que contiene el catalogo de recuperacion, este catalogo contiene metadata que RMAN utiliza para respaldar y recuperar la base de datos primaria.
    Aunque este componente no es obligatorio, ya que podemos respaldar utilizando nada mas el controlfile,si diria que es una buena practica tenerlo en nuestro ambiente de respaldos y recuperacion.
  • Manejador de Medios (Media Manager)
    Para ponerlo de manera sencilla,este manejador es una aplicacion de un vendor para mandar nuestros respaldos a cinta, como por ejemplo Netbackup o Tivoli.
Canales de RMAN
Una de las cosas mas importantes a entender es que el cliente de RMAN no hace los respaldos, restauraciones o recuperaciones, si no lo que hace es asigna sesiones de servidor en la Base de Datos Primaria y las dirige para que estas hagan las operaciones correspondientes.
En Unix un canal es un proceso de servidor, en Windows es un thread dentro del servicio de la Base de Datos.
En la figura que sigue puedes ver un pequeño ejemplo de como funcionan estos, estos canales son los que cuando hagamos nuestros respaldos, podamos hacer un respaldo en paralelo.
Algo importante a saber, los dispositivos soportados por RMAN para respaldos son disco y SBT (System Backup to Tape), un SBT es manejado por un vendor y normalmente estan conformadas por las librerias de cinta y los drives de cinta.

Una vez que logramos comprender lo minimo necesario de la arquitectura de RMAN, en la siguiente entrada (Parte II) vamos a ver directamente como configurar nuestro ambiente de respaldo de RMAN, incluyendo la base de datos de catalogo y como hacer respaldos desde RMAN.