Está en la página 1de 14

PLAN DE TRABAJO PARA DEFINIR LAS ACTIVIDADES CORRESPONDIENTES AL MANEJO DE

COPIAS DE SEGURIDAD Y RESTAURACIÓN DE BASES DE DATOS

Plan de Trabajo para Definir las Actividades Correspondientes al


Manejo de Copias de Seguridad y Restauración de Bases de Datos

Daniela Ochoa Flórez

Servicio Nacional de Aprendizaje Sena


Titulada Virtual
Análisis y Desarrollo de Sistemas de Información
Proyecto de formación Diseño y construcción de software a la
medida para el sector empresarial
Fase V – Implantación
Medellín, Colombia
2017
1
PLAN DE TRABAJO PARA DEFINIR LAS ACTIVIDADES CORRESPONDIENTES AL MANEJO DE
COPIAS DE SEGURIDAD Y RESTAURACIÓN DE BASES DE DATOS

Tabla de contenido
Introducción ................................................................................................................................................ 3

Objetivos ..................................................................................................................................................... 3

Realización de Copia de Seguridad (Backup) ................................................................................................. 3

Recuperación de la Base de Datos Ciklos ...................................................................................................... 8

Clonación de la Base de Datos Ciklos .......................................................................................................... 10

Política de Copias ...................................................................................................................................... 12

2
PLAN DE TRABAJO PARA DEFINIR LAS ACTIVIDADES CORRESPONDIENTES AL MANEJO DE
COPIAS DE SEGURIDAD Y RESTAURACIÓN DE BASES DE DATOS

1. Introducción
En este plan de trabajo se pretende definir las actividades a realizar para el manejo de copias
de seguridad y restauración del software Ciklos.

Con este plan de trabajo pretendemos mostrar como realizar el manejo de una copia de
seguridad de la información en el sistema Windows y algunos consejos a fin de poder
realizar su copia de seguridad y por ende su restauración de manera correcta y sin
inconvenientes.

2. Objetivos

- Conocer los procedimientos para la realización de copias de seguridad lógicas o físicas


desde línea de comandos o desde Entrepise Manager y los correspondientes
procedimientos de restauración de la Base de Datos completa o de parte de ella.
- Conocer las vistas dinámicas que informan sobre el estado real de los ficheros de datos.
- Conocer la forma de configurar Oracle para que se hagan copias automáticas.
- Aprender a clonar una Base de Datos usando RMAN en un servidor distinto.
- Conocer las políticas de copias de seguridad más habituales y la forma de
automatizarlas.
- Aprender a redactar una documentación concisa y útil sobre procedimientos de
administración.

3. Realización de Copia de Seguridad (Backup)

Las copias de seguridad o backups pueden ser físicas y lógicas:

- Las físicas se realizan cuando se copian los ficheros que soportan la Base de Datos. Entre
estos se encuentran los backups del SO, los backups en frío y los backups en caliente.

• Backup del SO

Este tipo de backup implica parar la Base de Datos en modo normal y esto la hace
inaccesible el sistema mientras se lleva a cabo.

• Backups de la Base de Datos en Frio

Los backups en frio implican parar la Base de Datos en modo normal y copiar todos
los ficheros sobre los que se asienta. Antes de parar la Base de Datos hay que parar
también todas las aplicaciones que estén trabajando con la Base de Datos. Una vez
realizada la copia de los ficheros, la Base de Datos se puede volver a arrancar.

3
PLAN DE TRABAJO PARA DEFINIR LAS ACTIVIDADES CORRESPONDIENTES AL MANEJO DE
COPIAS DE SEGURIDAD Y RESTAURACIÓN DE BASES DE DATOS

• Backups de la Base de Datos en Caliente

El backup en caliente se realiza mientras la Base de Datos está abierta y funcionando


en modo ARCHIVELOG. Habrá que tener cuidado de realizarlo cuando la carga de la
Base de Datos sea pequeña. Este tipo de backup consiste en copiar todos los ficheros
correspondientes a un tablespace determinado, los ficheros redo log archivados y los
ficheros de control.

- Las lógicas sólo extraen información de las tablas utilizando comandos SQL y utilizando
las herramientas export e import.

• Backups Lógicos con Export/Import

Estas utilidades permiten al DBA hacer copias de determinados objetos de la Base de


Datos, así como restaurarlos o moverlos de una Base de Datos a otra. Estas
herramientas utilizan comandos del SQL para obtener el contenido de los objetos.

NOTA: Una vez que se ha planeado una estrategia de backup y se ha probado, conviene
automatizarla para facilitar así su cumplimiento.

MODE ARCHIVELOG:

El modo archivelog de una base de datos Oracle protege contra la pérdida de datos
cuando se produce un fallo en el medio físico.

1. Se puede realizar una copia de seguridad mientras la base de datos está on-line.
2. Con este modo de base de datos se puede restaurar una copia de seguridad de
los archivos dañados utilizando estos archivos para actualizar los archivos
mientras están online.
3. Se puede recuperar la base de datos en un número de cambio del sistema
específico.
4. Se puede restaurar la base de datos en un punto específico en el tiempo.

Alguna de las consecuencias que tiene desactivarlo son las siguientes:

1. Las copias de seguridad ya no se pueden hacer on-line (habría que aplicar otro
tipo de copias de seguridad).
2. No se podrá recuperar la base de datos en un tiempo concreto.

NOTA: Esta decisión tiene que ser aprobada por el DBA (según la política de backup
que se adopte).

4
PLAN DE TRABAJO PARA DEFINIR LAS ACTIVIDADES CORRESPONDIENTES AL MANEJO DE
COPIAS DE SEGURIDAD Y RESTAURACIÓN DE BASES DE DATOS

Teniendo en cuenta estas características básicas del modo archivelog de base de datos
Oracle, vamos a exponer cómo se activa y cómo se desactiva:
1. Activando el modo Archivelog:

1. Para que el modo archivelog esté activado, el init.ora debe de estar arrancado con los
siguientes parámetros. Este archivo en Windows debería encontrarse en:

<ORACLE_HOME>\database\INIT<sid>.ORA

Editar INIT.ORA

log_archive_start=true
log_archive_dest_1='location=E:\backups_oracle\arch_log\' REOPEN=5
log_archive_format = arch_%t_%s.arc

*log_archive_dest_1= es el destino donde vas a archivar los .arc

En mi instalación de Oracle 11g este fichero no está generado, para generarlo:

SQL>CREATE PFILE FROM SPFILE;

También podríamos hacer las modificaciones en el SPFILE<SID>.ORA pero este fichero es


muy delicado y sus modificaciones se realizan mediante comandos como:

SQL> ALTER SYSTEM parámetro = valor SCOPE= [spfile, memory, both]

*La cláusula scope especifica donde quiere que se recoja el cambio; spfile (graba los nuevos
valores en spfile.ora), memory (aplica el cambio solo en la memoria) o both (graba las
modificaciones enspfile.ora y lo aplica en memoria).

*Para log_archive_start necesitamos scope=spfile ya que es un parámetro estático y


necesita reiniciar la Base de Datos para que el cambio surja efecto. Al contrario,
log_archive_dest es dinámico y para su modificación no necesitamos reiniciar la Base de
Datos.

Modificando SPFILE<SID>.ORA

SQL> ALTER SYSTEM set log_archive_start=true scope=spfile

SQL> ALTER SYSTEM set log_archive_dest_1='location=E:\backups_oracle\arch_log\'


scope=both;

2. Si la base de datos está funcionando y esos parámetros están en el init.ora paramos la


base de datos con un

> shutdown immediate

5
PLAN DE TRABAJO PARA DEFINIR LAS ACTIVIDADES CORRESPONDIENTES AL MANEJO DE
COPIAS DE SEGURIDAD Y RESTAURACIÓN DE BASES DE DATOS

NOTA: Previamente habría que haberse conectado, con privilegios adecuados, a la base de
datos sobre la que se quiere realizar el cambio.
3. A continuación, montamos la base de datos:

> startup mount

4. Después de haber montado la base de datos ejecutamos el siguiente comando para


comunicarle a la base de datos que arrancamos en modo archive log, pero si el init.ora
tiene el parámetro log_archive_start=true, este modo arrancara automáticamente:

> alter database archivelog;

5. Y después abrimos la base de datos:

> alter database open;

6. Para finalizar, activamos el archivado automático, Al hacer el paso 3 realiza este


automáticamente:

> alter system archive log start;

Con esto ya tendríamos configurado el modo archivelog de una base de datos Oracle.

2. Desactivando el modo Archivelog:

Para desactivar el modo archive log de una base de datos (teniendo en cuenta las
consecuencias que esto conlleva) seguimos los siguientes pasos:

1. Nos conectamos a la base de datos en la cual queremos parar el modo de archivado


y la paramos mediante el comando:

> shutdown immediate

2. Montamos la base de datos mediante el comando:

> startup mount

3. Desactivamos el modo archivelog:

> alter database noarchivelog

4. Abrimos la base de datos:

> alter database open

6
PLAN DE TRABAJO PARA DEFINIR LAS ACTIVIDADES CORRESPONDIENTES AL MANEJO DE
COPIAS DE SEGURIDAD Y RESTAURACIÓN DE BASES DE DATOS

5. Desactivamos el archivado automático. Al hacer el paso 3 realiza este


automáticamente:

> alter system archive log stop

Con esto ya tendríamos desactivado el modo archive log de una base de datos Oracle.

ARCHIVOS DE LOG

Esto es tan sencillo como copiar todos los ficheros archivelog a otra ubicación con la utilidad
del sistema operativo (xcopy).

Una vez que se ha realizado el respaldo (backup) de estos ficheros pueden ser borrados de
la ubicación original en caso de que queramos liberar un poco de espacio, ya que contienen
las ultimas transacciones y si en algún caso queremos realizar una recuperación en el tiempo
tenemos todos estos archivos guardados para cuando la recuperación los pida.

Si trabajamos con el destino predeterminado que en Oracle 11g es:

E:\oracle\app\Administrador\flash_recovery_area\ORCL\ARCHIVELOG>

E:\oracle\app\Administrador\flash_recovery_area\ORCL>XCOPYARCHIVELOG

E:\backups_oracle /E

Con este último comando copiamos la carpeta contenedora de todos los archivos de log
recursivamente(/E), llevando estas al destino elegido.

En este documento al activar el modo archive log hemos definido una ruta donde se irán
generando los archivos de log, con el formato predeterminado en los parámetros de
spfile.ora.

INIT.ORA

Es recomendable tener una copia del init.ora en algún sitio (con realizar esta copia cada vez
que cambie este archivo sería suficiente).

Como vimos con los backups en frio, copiamos el init.ora de la siguiente forma:

$>COPY E:\oracle\app\Administrador\product\11.1.0\db_1\dbs\init.ora

E:\backups_oracle\binit.ora

7
PLAN DE TRABAJO PARA DEFINIR LAS ACTIVIDADES CORRESPONDIENTES AL MANEJO DE
COPIAS DE SEGURIDAD Y RESTAURACIÓN DE BASES DE DATOS

CONTROFILE

Es recomendable tener una copia de los ficheros de control de la base de datos. Este backup
se puede realizar de la siguiente forma:

Alter database backup controlfile to destino nombredelfichero;


Alter database backup controlfile to 'E:\backups_oracle\bCONTROL';

Si queremos tener un backup legible de estos ficheros para crear uno nuevo en caso de
pérdida, la sentencia a ejecutar es la siguiente:

Alter database backup controlfile to trace as 'destino/fichero';


Alter database backup controlfile to trace as 'E:\backups_oracle\bCONTROL1';

4. Recuperación de la Base de Datos Ciklos

Para recuperar la base de datos a un estado anterior esta tiene que estar puesta en modo
archivelog y tener los archivelog correspondientes a las transacciones que queramos
recuperar para poder volver al punto en el tiempo indicado.

Teniendo en cuenta que nuestra base de datos está levantada los pasos a seguir son los
siguientes:

1. Nos conectamos a la base de datos


2. Bajamos la instancia de base de datos

SQL > shutdown immediate

3. Levantamos la instancia en modo mount

SQL > startup mount

4. Recuperamos la base de datos hasta la fecha indicada (punto en el tiempo al cual


queremos retroceder)

SQL > recover database until time '2009-02-10:22:59:04'

Con esto hemos conseguido recuperar la instancia en el momento indicado en la


fecha ('2007-01-10:22:59:04' à 10 de enero de 2007 a las 22 horas 59 minutos y 4
segundos)

Con relación a la fecha el formato por defecto es el siguiente: 'YYYY-MMDD:


HH24:MI:SS'

8
PLAN DE TRABAJO PARA DEFINIR LAS ACTIVIDADES CORRESPONDIENTES AL MANEJO DE
COPIAS DE SEGURIDAD Y RESTAURACIÓN DE BASES DE DATOS

La sintaxis de este comando:

RECOVER [AUTOMATIC] [FROM 'localizacion'] [BD]


[UNTIL CANCEL]
[UNTIL TIME fecha]
[UNTIL CHANGE entero]
[USING BACKUP CONTROLFILE]

AUTOMATIC hace que la recuperación se haga automáticamente sin preguntar al DBA por
el nombre de los ficheros redo log. También se puede utilizar para este cometido el
comando set autorecovery on/off. Los ficheros redo log deben estar en la localización fijada
en LOG_ARCHIVE_DEST y el formato del nombre de los ficheros debe ser el fijado en
LOG_ARCHIVE_FORMAT.

FROM se utiliza para determinar el lugar donde están los ficheros redo log, si es distinto del
fijado en LOG_ARCHIVE_DEST.

UNTIL sirve para indicar que se desea realizar una recuperación incompleta, lo que implica
perder datos. Solo se dará cuando se han perdido redo log archivados o el fichero de control.
Cuando se ha realizado una recuperación incompleta la Base de Datos debe ser abierta con
el comando alter database open resetlogs, lo que produce que los redo log no aplicados no
se apliquen nunca y se inicialice la secuencia de redo log en el fichero de control. Existen
tres opciones para parar la recuperación:

- UNTIL CANCEL permite recuperar un redo log cada vez, parando cuando se teclea
CANCEL.
- UNTIL TIME permite recuperar hasta un instante dado dentro de un fichero de redo
log
- UNTIL CHANGE permite recuperar hasta un SCN dado.
- USING BACKUP CONTROLFILE utiliza una copia de seguridad del fichero de control
para gobernar la recuperación.

• RECUPERACIÓN DE UN TABLESPACE

La Base de Datos debe estar abierta, pero con el tablespace a recuperar offline. El
comando de recuperación es el siguiente:

RECOVER [AUTOMATIC] [FROM 'localizacion']


TABLESPACE nombre_tablespace [, nombre_tablespace]

9
PLAN DE TRABAJO PARA DEFINIR LAS ACTIVIDADES CORRESPONDIENTES AL MANEJO DE
COPIAS DE SEGURIDAD Y RESTAURACIÓN DE BASES DE DATOS

• RECUPERACION DE UN FICHERO DE DATOS

La Base de Datos debe estar abierta o cerrada, dependiendo del fichero a recuperar.
Si el fichero a recuperar es de un tablespace de usuario la Base de Datos puede estar
abierta, pero con el fichero a recuperar offline. Si el fichero es del tablespace
SYSTEM la Base de Datos debe estar cerrada, ya que no puede estar abierta con los
ficheros del SYSTEM offline. El comando de recuperación es el siguiente:

RECOVER [AUTOMATIC] [FROM 'localizacion']


DATAFILE nombre_fichero [, nombre_fichero]

5. Clonación de la Base de Datos Ciklos

1. Se debe generar un listener, el cual contenga las entradas de la instancia nueva


y claro, el origen de donde sacaremos los datos.

LISTER11G =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP) (HOST = oracle11g.inmotion.cl) (PORT = 1521))
)

SID_LIST_LISTER11G =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = orcl)
(ORACLE_HOME = /u01/app/oracle/product/11.1.0/db_1)
(SID_NAME = orcl)
)

(SID_DESC =
(GLOBAL_DBNAME = copia)
(ORACLE_HOME = /u01/app/oracle/product/11.1.0/db_1)
(SID_NAME = copia)
)
)

2. Al momento de levantar el listener, debe estar proporcionando disponibilidad a


ambos servicios.

10
PLAN DE TRABAJO PARA DEFINIR LAS ACTIVIDADES CORRESPONDIENTES AL MANEJO DE
COPIAS DE SEGURIDAD Y RESTAURACIÓN DE BASES DE DATOS

3. Se debe añadir la siguiente entrada al archivo tnsnames.ora

copia =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP) (HOST = oracle11g.inmotion.cl) (PORT
= 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = copia))
)

4. Se debe generar un archivo de password, dado que el DUPLICATE ACTIVE


DATABASE se conecta mediante SYSDBA a la instancia remota. Como
observación, la password debe ser exactamente la misma, entre la instancia de
origen y la de destino.

5. Se debe iniciar la instancia auxiliar en estado NOMOUNT, en esta instancia es


donde quedarán los datos de la primaria.
6. Nos conectamos a RMAN, con la instancia primaria, la base de datos debe estar
abierta.
7. Nos conectamos a través de RMAN a la instancia auxiliar.
8. Se deben generar todos los directorios nuevos que vamos a utilizar en nuestra
nueva instancia
9. Ahora podemos ejecutar nuestro comando DUPLICATE DATABASE mediante
RMAN, de la siguiente forma:

run {
set newname for datafile '/u01/app/oracle/oradata/orcl/users01.dbf' to
'/u01/app/oracle/oradata/copia1/users01.dbf';
set newname for datafile '/u01/app/oracle/oradata/orcl/undotbs01.dbf' to
'/u01/app/oracle/oradata/copia2/undotbs01.dbf';
set newname for datafile '/u01/app/oracle/oradata/orcl/sysaux01.dbf' to
'/u01/app/oracle/oradata/copia3/sysaux01.dbf';
set newname for datafile '/u01/app/oracle/oradata/orcl/system01.dbf' to
'/u01/app/oracle/oradata/copia4/system01.dbf';

11
PLAN DE TRABAJO PARA DEFINIR LAS ACTIVIDADES CORRESPONDIENTES AL MANEJO DE
COPIAS DE SEGURIDAD Y RESTAURACIÓN DE BASES DE DATOS

Duplicate target database to copia


from active database
db_file_name_convert '/u01/app/oracle/oradata/orcl’,
'/u01/app/oracle/oradata/copia'
spfile parameter_value_convert = '/u01/app/oracle/admin/orcl’,
'/u01/app/oracle/admin/copia'
Set log_file_name_convert =
'/u01/app/oracle/oradata/orcl','/u01/app/oracle/oradata/copia'
set audit_file_dest='/u01/app/oracle/admin/copia/adump'
set log_archive_dest_1=''
set memory_target='183001600'
set dispatchers='(PROTOCOL=TCP) (SERVICE=copia)'
set
control_files='/u01/app/oracle/oradata/copia1/control01.ctl','/u01/app/o
racle/
oradata/copia2/control02.ctl','/u01/app/oracle/oradata/copia3/control03
.ctl'
set db_recovery_file_dest_size = '2294967296';
}

6. Política de Copias

Temas a tener en cuenta al momento de la creación de una estrategia de backup

1. Elección del tipo de backup

- Backup total (whole) de la base de datos


- Consistente
- Inconsistente
- Backup de Tablespaces
- Backup de Datafile
- Backup del Archivo de Control
- Backups Lógicos
2. Elección del método de backup

Métodos disponibles:

Método de Backup Tipo Versión Disponible Requerimientos


Recovery Manager
Físico Oracle 8 ó mayor Almacenamiento en disco ó cinta
(RMAN)
Backup Manual (S.O.) Herramienta de copia de archivos del
Físico Todas las versiones
sistema operativo
Todas las
Export Lógico N/A
versiones
Enterprise Backup
Físico Oracle 7 Almacenamiento externo
Utility (EBU)

12
PLAN DE TRABAJO PARA DEFINIR LAS ACTIVIDADES CORRESPONDIENTES AL MANEJO DE
COPIAS DE SEGURIDAD Y RESTAURACIÓN DE BASES DE DATOS

Tipos de backup disponibles:

Tipo de backup RMAN Backup Manual Export


Backup en frio (Cold
Soportado - Requiere que
Backup - Closed Soportado NO soportado
la instancia esté montada
Backup)
Backup en caliente Requiere los Requiere Undo para
Soportado en forma
(Hot Backup - Open Comandos Begin/End mantener
automática
Backup) Backup consistencia
Backup Incremental Soportado NO soportado NO soportado
Soportado. Se visualiza
Detección de bloques Soportado. Se
con las vistas NO soportado
corruptos visualiza en el Log.
V$BACKUP_CORRUPTION
Catálogo de backups Soportado NO soportado NO soportado
Resguardo de
Soportado Soportado NO soportado
archivos de inicio
Comandos
Soportado NO soportado Soportado
independientes S.O.

3. Elección del formato de Backup

- Juegos de Copias (Backup Sets)


- Copias Imagen
- Backups con comandos del sistema operativo
- Backups Lógicos

4. Desarrollar la estrategia de backup

- Decidir si ejecutar la instancia en modo ARCHIVELOG ó


NOARCHIVELOG
- Multiplicar el Archivo de Control, Online Redo Logs, y Archived Redo
Logs
- Determinación de la frecuencia de los backups
- Realización de backups cuando se realizan cambios estructurales
- Backups frecuentes de los tablespaces más utilizados
- Realización de backups después de actividades irrecuperables (nolog)
- Almacenamiento de backups históricos
- Exportación de datos de la base de datos para obtener protección
adicional y flexibilidad

NOTA: Nunca hacer backups de los archivos Redo Log a menos que sea un backup
en frio.

13
PLAN DE TRABAJO PARA DEFINIR LAS ACTIVIDADES CORRESPONDIENTES AL MANEJO DE
COPIAS DE SEGURIDAD Y RESTAURACIÓN DE BASES DE DATOS

5. Desarrollar una estrategia de recuperación

• Verificación de las estrategias de recuperación

• Manejo de los fallos no provenientes del medio físico

- Fallos de sentencia
- Fallos del Proceso de Usuarios
- Errores de usuario
- Fallos de instancia

• Recuperación de un fallo en el medio físico

- Fallo de un disco que contiene al menos un archive de la base de


datos
- Un archivo de datos, archived log ó archivo de control que se
elimina accidentalmente o se sobrescribe o se corrompe

• Método de recuperación:

- Determinar qué archivos requieren restauración.


- Determinar el tipo de recuperación requerido: Completo ó
Incompleto, con la base de datos Abierta ó Cerrada
- Restaurar los archivos necesarios de las copias del backup o de una
copia imagen
- Aplicar los registros redo (y/o backups incrementales cuando
corresponda) para recuperar los archivos de datos.
- Re-abrir la base de datos. Si se realizó una recuperación incompleta,
iniciar la instancia con la opción RESETLOGS.

14

También podría gustarte