Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Resumen
Con este artículo pretendemos dar una panorámica elemental sobre las situaciones
que conllevan a la perdida de datos, y las posibilidades que tenemos en nuestras
manos para lograr mejores resultados en la Protección de la Información.
Introducción
En Oracle contamos con mecanismos de backup físicos y lógicos que nos permiten
proteger la base de datos con un alto nivel de fiabilidad, y como se ha mencionado
anteriormente, en la actualidad se han incorporado funcionalidades para
la protección de ficheros de base de datos (ASM), corrección de errores humanos
(Flashback), prevención de corrupciones (HARD), backup automático (RMAN, FRA), y
protección ante desastres (DATA GUARD).
Backup Lógicos
Oracle
<export>
Parámetros export:
Entre los parámetros que son posibles definir para esta utilidad encontramos:
Parámetros import:
Entre los parámetros que son posibles definir para esta utilidad encontramos:
FILE (expdat.dmp), especifica el nombre para el dump file hecho con export.
Pueden especificarse múltiples nombres.
TOUSER, lista de usuarios hacia los cuales se realizara la importación del esquema
especificado con el parámetro FROMUSER.
Las ventajas son muchas, con relación a los mecanismos tradicionales de copias
consistentes a través de comandos del sistema operativo. Los
administradores disponen ahora de una interfase que les permite hacer más
placentera la tarea de respaldo y recuperación de información.
Entre sus múltiples ventajas, resaltan la posibilidad que tiene el DBA para:
<Fichero CMD>
<Interactivo>
<Script almacenado>
El catálogo de recuperación:
Los metadatos asociados a las operaciones realizadas con RMAN se almacenan por
defecto hacia el fichero de control de la base de datos, la implementación
del catálogo tiene como objetivo flexibilizar estas operaciones de forma que el backup
y la restaura puedan hacerse hacia y desde cualquier base de datos registrada en el
mismo, y evitar las limitaciones de almacenamiento de información histórica que
pudiera existir con la utilización del fichero de control. No obstante, la utilización
del catálogo, debe realizarse si para su implementación contamos con una base de
datos que pueda contenerlo, y que la misma no forme parte de la estructura
de información que desea respaldarse, de lo contrario cualquier perdida asociada
con la base de datos, incluirá la perdida de la información para recuperarla.
Configurando RMAN:
Realizar siempre backup del control file y spfile después del backup de los datos y
de operaciones que modifiquen la estructura física de la base de datos.
Sólo se realiza el backup de los data files que hayan cambiado después del último
backup.
RMAN>show all;
Backup
backupOperand:
DATAFILE datafileSpec
DATAFILECOPY 'filename'
TABLESPACE ['] tablespace_name [']
DATABASE
CURRENT CONTROLFILE [FOR STANDBY]
CONTROLFILECOPY 'filename'
SPFILE
backupSpecOperand:
NOT BACKED UP, define el backup para estructuras que no han sido respaldadas
desde un tiempo especificado.
DELETE [ALL] INPUT, elimina copias y log archivados que han sido respaldados.
Utilizando BACKUP:
<Backup Full>
9 Ejemplo 1
RMAN> run
{
allocate channel c1 device type disk format '/salvas/%d_%u_%t.bak';
backup database include current controlfile plus archivelog delete input;
}
9 Ejemplo 2
<Backup Parcial>
9 Ejemplo 1
RMAN> run
{
allocate channel c1 device type disk;
allocate channel c2 device type disk;
allocate channel c3 device type disk;
backup datafile 5, 6, 7;
}
9 Ejemplo 1
9 Ejemplo 1
Se realiza el backup del control file actual, especificando desde la propia línea de
comandos la ubicación del fichero de respaldo.
<Backup Incremental>
Diferencial:
9 Ejemplo 1
9 Ejemplo 2
9 Ejemplo 3
restoreObject:
CONTROLFILE TO ‘filename’
DATABASE SKIP FOREVER TABLESPACE ‘tablespacename’
DATAFILE ‘datafilespec’
SPFILE TO PFILE ‘filename’
STANDBY CONTROLFILE TO ‘filename’
TABLESPACE ‘tablespacename’
SPFILE, especifica la restaura del fichero de parámetros, que puede hacerse hacia
la ubicación original definida en el contenedor de backup o hacia una nueva a
través de la creación de un PFILE.
FROM TAG, especifica que la restaura se realizará a partir de una etiqueta definida
para el contenedor en el momento del backup.
restoreSpecGeneral:
9 Ejemplo 1
RMAN> run
{
startup mount;
restore database;
recover database;
alter database open;
}
Si los control files y los redo logs están en buen estado, se realiza la restaura de
todos los data files, se ordena una recuperación y se abre la base de datos.
9 Ejemplo 1
RMAN> run
{
startup mount;
set until time 'Nov 15 2000 09:00:00';
# set until scn 1000; # alternativa
# set until sequence 9923; # alternativa
restore database;
recover database;
alter database open resetlogs;
}
Si los control files y los redo logs están en buen estado, se realiza la restaura de
todos los data files, se ordena una recuperación hasta un punto en el tiempo y se
abre la base de datos. Las alternativas asociadas a la clausula ‘until’
pueden especificarse a partir de una secuencia o del Número de Cambio del Sistema
(SCN). Las diversas formas para obtener esos valores pueden consultarse mas
adelante en la sección de Conclusiones y Recomendaciones.
<Restaura y recuperación parcial>
9 Ejemplo 1
9 Ejemplo 1
RMAN> run
{
set until scn 1000;
# set until sequence 9923; # alternativa
restore database;
recover database;
alter database open resetlogs;
}
RMAN> run
{
set until scn 1000;
# set until sequence 9923; # alternativa
restore database;
recover database;
alter database open resetlogs;
}
<Sincronización>
9 Ejemplo 1
9 Ejemplo 2
<Depuración>
9 Ejemplo 1
9 Ejemplo 2
Se realiza la eliminación de los backup que han pasado a ser obsoletos por no ser
necesarios para realizar una recuperación hasta un punto dentro de los últimos 7
días. Se utiliza la opción ‘noprompt’ para evitar la confirmación de la operación y
‘force’ para ejecutar de cualquier forma esta acción.
<Validación>
9 Ejemplo 1
9 Ejemplo 2
<Reportes>
9 Ejemplo 1
Se construye un reporte sobre los backup que han quedado obsoletos de acuerdo
con la política de retención definida, que en este caso son 7 días.
9 Ejemplo 2
Por lo extenso del tema y la imposibilidad actual de abordarlo todo, se han quedado
temas de interés que pretendemos tratarlos en un próximo artículo. Con el objetivo
de profundizar en algunas cuestiones del utilitario RMAN y dar a
conocer las nuevas posibilidades para backup lógico con la utilidad ‘Data Pump’,
que optimiza y flexibiliza las operaciones tradicionales realizadas con ‘export’ e
‘import’ a través de métodos direct path y el uso de tablas externas, lográndose altas
velocidades en la transferencia de datos hacia y desde el dump file.
SCN
SEQUENCE
También pueden obtenerse del LOG generado por el backup realizado con RMAN o
de la salida del comando ' list backup ' del conjunto de instrucciones de
este utilitario.
<ASM>
<OMF>
Si se está utilizando esta posibilidad para nombrar los ficheros, y deseamos realizar
una restaura de los data files, debe eliminarse la especificación del directorio por
defecto para esta característica antes de hacer el ‘restore database’:
Esto permitirá realizar la restaura de los data files hacia la ubicación original, que
de otra forma quedarían todos ubicados en el PATH referenciado
por este parámetro.
<Detección de Corrupciones>
RMAN> run
{
set MAXCORRUPT for datafile datafileSpec to integer;
backup validate check logical datafile datafileSpec;
}
Bibliografía:
Oracle Database Documentation Library 10g, Backup and Recovery Advanced User’s Guide,
http://download.oracle.com/docs/cd/B19306_01/backup_102/b14191/toc.htm
http://download.oracle.com/docs/cd/B19306_01/backup_102/b14192/toc.htm
Oracle Database Documentation Library 10g, Backup and Recovery Quick Start Guide,
http://download.oracle.com/docs/cd/B19306_01/backup_102/b14193/toc.htm
http://download.oracle.com/docs/cd/B19306_01/backup_102/b14194/toc.htm