lunes, 20 de abril de 2009

Creando export de Oracle comprimido en Linux

Existe una gran cantidad de notas para ser utilizadas como referencia, para hacer un export de modo comprimido, utilizando el comando "compress" para plataformas UNIX.
En Linux podemos utilizar el comando "gzip" y los archivos "de nodos" a nivel de sistema operativo, para poder realizar esta labor.

Primero que todo en un directorio temporal, vamos a crear los archivos "PIPE", que nos ayudaran a esto.

$>cd /oracle/tmp
$>mknod pipe p
$>mknod pipe p2
$>mknod pipe p3
$>mknod pipe p4
$>mknod pipe p5
$>mknod pipe p6

Luego vamos a crear el siguente archivo de comandos SHELL.

$> more resp_pipe_orcl.sh

ORACLE_HOME=/opt/product/app/10g
ORACLE_SID=ORACLE_
TERM=xterm
PATH=${PATH}:$ORACLE_HOME/bin:/usr/bin
umask 022
NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P1
export NLS_LANG
gzip < /oracle/tmp/pipe > /oracle/respaldo/expdiario_orcl_01_parte.dmp.gz &
gzip < /oracle/tmp/pipe2 > /oracle/respaldo/expdiario_orcl_02_parte.dmp.gz &
gzip < /oracle/tmp/pipe3 > /oracle/respaldo/expdiario_orcl_03_parte.dmp.gz &
gzip < /oracle/tmp/pipe4> /oracle/respaldo/expdiario_orcl_04_parte.dmp.gz &
gzip < /oracle/tmp/pipe5> /oracle/respaldo/expdiario_orcl_05_parte.dmp.gz &
gzip < /oracle/tmp/pipe6> /oracle/respaldo/expdiario_orcl_06_parte.dmp.gz &
exp respaldo/respaldo full=yes file=/oracle/tmp/pipe,/oracle/tmp/pipe2,/oracle/tmp/pipe3, /oracle/tmp/pipe4, /oracle/tmp/pipe5, /oracle/tmp/pipe6 filesize=2048M statistics=none log=/oracle/respaldo/exp_full_diario_orcl_full.log
$>

Lo que hacemos aquí, es crear varios archivos de un export grande, fragmentándolo en pedezos de 2GB como máximo. Cada dispositivo "pipe", lo referenciamos como un archivo independiente.
Antes de iniciar el export, concatenamos el comando gzip con un respectivo nombre final de archivo y lo dejamos corriendo en background, para dejarlos de una vez comprimidos los archivos desde el mismo momento cuando se realiza el export.

Puntos positivos:
  • Ahorramos espacio de almacenamiento
  • Fácil administración de archivos
  • Tamaño total de exports se reduce entre un 60% a un 70%

Desventajas:

  • Mayor tiempo de duración del export
  • Mayor consumo de memoria y cpu durante la ejecución

Recomendaciones

  • Ejecutar durante períodos de bajo nivel de operación del servidor
  • Se puede poner las opciones del export en un "parfile", para mejor administración.

2 comentarios:

  1. ¿Cual es la diferencia entre el exp y el expdp?
    Gracias.

    ResponderEliminar
  2. Leo, te doy una pequeña reseña sobres las diferencias entre el EXP y EXPDP ( DATA PUMP UTILITY )

    ResponderEliminar

Te agradezco tus comentarios. Te esperamos de vuelta.

Todos los Sábados a las 8:00PM

Optimismo para una vida Mejor

Optimismo para una vida Mejor
Noticias buenas que comentar