Estrategias de Respaldo y Recuperación de Datos en Bases de Datos Oracle

Copias de seguridad en Bases de Datos Oracle

Las copias de seguridad son esenciales para garantizar la integridad y disponibilidad de los datos en cualquier sistema de gestión de bases de datos. En Oracle, existen dos tipos principales de copias de seguridad: lógicas y físicas.

Copias de seguridad lógicas

Las copias de seguridad lógicas consisten en leer datos de la base de datos y extraerlos, generando un archivo de exportación que podrá ser recuperado posteriormente con la orden IMPORT de Oracle. Las utilidades IMPORT y EXPORT nos permiten:

  • Archivar datos históricos.
  • Guardar definiciones de las tablas, con o sin datos.
  • Migrar datos de una versión a otra de Oracle.
  • Transportar tablespaces de una base de datos a otra.

Utilidad EXPORT

Para ejecutar esta utilidad, lo hacemos en modo comando desde el sistema operativo. Los parámetros más comunes son:

  • USERID: Nombre de usuario/contraseña.
  • BUFFER: Tamaño del buffer de datos en bytes.
  • FILE: Nombre del archivo de salida.
  • COMPRESS: Indica si la exportación debe comprimir segmentos fragmentados (Y/N).
  • GRANTS: Especifica si las concesiones sobre los objetos se exportan (Y/N).
  • INDEXES: Especifica si se exportan los índices de las tablas.
  • DIRECT: Indica si se realiza una exportación directa sin utilizar la caché.
  • LOG: Nombre del archivo para mensajes informativos y de error.
  • ROWS: Especifica si se exportan las filas de las tablas.
  • CONSISTENT: Indica si se mantiene una versión con coherencia de lectura de todos los objetos exportados.
  • FULL: Se realiza una exportación completa de la base de datos si se pone FULL=Y.
  • OWNER: Indica una lista de cuentas de la base de datos que se van a exportar.
  • CONSTRAINTS: Especifica si se exportan las restricciones sobre tablas.
  • TRIGGERS: Especifica si se exportan los triggers.
  • TABLES: Especifica la lista de las tablas que se van a exportar.
  • PARFILE: Especifica el nombre del archivo de parámetros que se va a pasar a EXPORT.
  • QUERY: Especifica una cláusula WHERE que se aplicará a cada tabla.
  • TABLESPACES: Especifica los tablespaces que se deben transportar.
  • TRANSPORT_TABLESPACE: Activa la exportación de tablespaces transportables.
  • FEEDBACK: Visualiza el proceso de exportación cada X filas.

Modos de exportación

  • Modo tabla: En este modo, se exportan las definiciones de la o las tablas.
  • Modo usuario: Se exportan todos los objetos del esquema del usuario.
  • Modo tablespaces: Se puede utilizar para mover tablespaces de una base de datos a otra.
  • Modo base de datos completa: Este modo exporta todos los objetos de la base de datos.

Utilidad IMPORT

  • USERID: Nombre de usuario/contraseña.
  • FILE: Nombre del archivo de exportación.
  • SHOW: Especifica si el contenido del archivo debe mostrarse.
  • IGNORE: Especifica si la importación debe ignorar errores.
  • FROMUSER: Lista de cuentas de la base de datos cuyos objetos deben leerse del archivo (FULL=N).
  • TOUSER: Lista de cuentas de la base de datos en las que se importan los objetos.
  • DESTROY: Especifica si se ejecutan los comandos CREATE TABLESPACE.
  • INDEXFILE: Permite escribir todos los comandos.
  • RESUMABLE: Especifica si se continúa la sesión después de los errores.
  • COMPILE: Especifica si se deben compilar de nuevo los procedimientos, funciones y paquetes de instalación.
  • DATAFILES: Indica la lista de archivos de datos que se va a transferir a la base de datos.
  • TTS_OWNERS: Especifica el nombre o la lista de nombres de propietarios.

Copias físicas

Consisten en copiar los archivos que constituyen la base de datos. Pueden ser en frío o en caliente.

  • En caliente: Se realizan con la base de datos abierta. Para ello, los archivos deben estar en modo ARCHIVELOG. Deben copiarse todos los archivos de datos, todos los Redo Logs y un archivo de control con ALTER DATABASE.
  • En frío: Se producen cuando la base de datos se ha desconectado de modo normal y no debido a ningún fallo, es decir, se ha cerrado con un SHUTDOWN. Los archivos que deben copiarse son todos los archivos de datos, todos los archivos de control y todos los Redo Logs.

Para utilizar ARCHIVELOG, hay que poner la base de datos en modo ARCHIVE LOG.

1. Proceso para las copias de los TABLESPACES

  • Poner el tablespace en estado de copia: ALTER TABLESPACE nombre BEGIN BACKUP. Esta orden hace que se congele la cabecera del archivo de datos y que se mantenga el número de secuencia.
  • Hacer copia de los archivos de datos asociados al tablespace.
  • Dejar el tablespace en modo normal: ALTER TABLESPACE nombre END BACKUP.
  • Forzar un punto de control para sincronizar las cabeceras de archivos mediante un cambio de log: ALTER SYSTEM SWITCH LOGFILE.

2. Proceso para las copias de REDO LOGS

Hacer copia de los Redo Logs archivados ubicados en el directorio de archive log.

3. Proceso para las copias del archivo de control

Este archivo es uno de los que más debe protegerse. Su información es necesaria para el inicio de una instancia. Contiene información como el archivo de Redo Log online actual o nombres de los archivos de bases de datos. Pasos para su copia:

  • Crear una imagen del archivo: ALTER DATABASE BACKUP CONTROLFILE TO 'archivo de destino'.
  • Crear un archivo de comandos para reproducir el archivo de control con: ALTER DATABASE BACKUP CONTROLFILE TO TRACE.

Restauración de datos

A la hora de recuperar los datos ante fallos imprevistos, hay que tener en cuenta el modo en el que estaba la base de datos y las copias que disponemos. El modo NOARCHIVELOG puede ser adecuado en bases de datos dedicadas a desarrollo, entrenamiento y prueba.

1. Recuperación en modo ARCHIVELOG

Podemos hacer recuperaciones completas de la base de datos y recuperaciones hasta un punto determinado. Ventajas:

  • Solo es necesario restaurar los archivos perdidos.
  • Recupera todos los datos hasta el momento del fallo.
  • El tiempo de recuperación es el que se tarda en restaurar los archivos de datos perdidos.

2. Recuperación completa ante fallo del medio físico

Antes de hacer recuperaciones de datos, es importante tener un plan de respaldo adecuado.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.