Conde Bond Post

Sólo existe un tipo de conocimiento, aquel que se transmite.

Utilidad de Copia de Seguridad Esquemas BD Aplicación


Consideraciones Previas

La Utilidad de copia de seguridad está concebida para un entorno de desarrollo (software factory) y su implementación no es aceptable en un entorno de producción.

Existe al menos un proceso de copia de seguridad alternativo de la base de datos completa (posiblemente con RMAN) y otro de recuperación del programario de base de datos (SAR Software Area Recovery) centralizado.

La Utilidad tiene que ser versátil y sencilla, es decir, utilizar las funcionalidades básicas del sistema operativo del servidor y del sistema gestor de base de datos.

La utilidad tiene que ser robusta y portable. Tiene que incorporar control de errores y poderse ejecutar de manera manual o programática a través de cron o la consola Enterprise Manager.

Modelado inicial

La Utilidad tiene que ser modular, no debe concebirse como un único programa, aunque acepte su ejecución programática. Bajo esta premisa, tendrá que disponer de al menos una lanzadora.

        Todos los programas (procedimientos, funciones o bloques anónimos) devolverán

        el resultado de su ejecución (SQLCode) para gestionarlos desde la lanzadora.

La Utilidad tiene que ser parametrizable, evitar el “hardcodeado” para su despliegue en distintos entornos de trabajo con configuraciones personalizadas.

        Por ejemplo:

        Si usamos la siguiente instrucción en un programa sh

        /u01/app/11.2.0.3/oracle/bin/sqlplus

        Sólo podrá ejecutarse en un entorno con dicha configuración. En su lugar usaremos

        $ORACLE_HOME/bin/sqlplus

         En lugar de utilizar rutas absolutas:

         cd /orafiles/dmps

        Obtendremos el valor almacenado en la base de datos:

        dirDMPs=$($ORACLE_HOME/bin/sqlplus -s $DBU/$DBP@$DBS << EOS

        SET TERMOUT OFF HEADING OFF ECHO OFF LINESIZE 500 PAGESIZE 0

        SET VERIFY OFF

        SELECT directory_name

        FROM all_directories

        WHERE directory_name=’$1′;

        EXIT;

        EOS

        )

        cd $dirDMPs

La Utilidad tiene que ejecutarse de manera centralizada, es decir desde una única interfície programática. Aunque acepte su uso en varias como pueden ser Clientes SQL (SQL*Plus,SQLDeveloper,PLSQLDeveloper, TOAD,etc.), clientes remotos o consola Oracle Enterprise Manager.

Para elaborar el primer prototipo estableceremos dos subsistemas básicos: el CORE o nivel de sistema de ficheros y el SQL o nivel de base de datos.

  • Las funcionalidades aceptadas a nivel de CORE son bash/korn shell, awk y sed.
  • Las funcionalidades aceptadas a nivel de SQL son datapump (línea de comandos y/o API de base de datos), sql y pl/sql.

Iniciaremos el desarrollo por el subsistema SQL para posteriormente implementar el subsistema CORE.

Entradas relacionadas

Mapa mental de la Utilidad

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: