Proyecto 6. Copias de seguridad y restauración.



Documentos relacionados
Recuperación de instancias dañadas usando RMAN

Backup & Recovery Oracle 9i

BACKUP Y RECUPERACION

Backup & Recovery Oracle 9i. Las copias físicas offline, conocidas como Backups en frío, se realizan cuando la Base de Datos está parada.

Instituto Profesional DuocUC Escuela de Ingeniería Control File

Oracle Database 10g: Taller de Administración I 1-2

LABORATORIO 10. COPIAS DE SEGURIDAD, RESTAURACIÓN Y RECUPERACIÓN DE UNA BD

LABORATORIO 10. ADMINISTRACIÓN DE COPIAS DE SEGURIDAD EN SQL SERVER

Standby - Oracle SE 11g - Linux by enzo.viza@gmail.com

Instantáneas o Shadow Copy

Toda base de datos relacional se basa en dos objetos

WINDOWS : COPIAS DE SEGURIDAD

Realizado por: Maravillas Muñoz Fernando Fernández Ginés Fernández

6.0 Funcionalidades Adicionales

1. Conectarse al catalogo de RMAN de una BBDD determinada

LABORATORIO 10. COPIAS DE SEGURIDAD, RESTAURACIÓN Y RECUPERACIÓN DE UNA BD

Administración Básica de Oracle10g

Instalación. Interfaz gráfico. Programación de Backups. Anexo I: Gestión de la seguridad. Manual de Usuario de Backup Online 1/21.

TEMA 4.4: Recuperación ante fallos

GUIA COMPLEMENTARIA PARA EL USUARIO DE AUTOAUDIT. Versión N 02 Fecha: 2011-Febrero Apartado: Archivos Anexos ARCHIVOS ANEXOS

INSTALACIÓN DE ORACLE 8i (8.1.7) SOBRE NT

Copias de seguridad con SQL Server 2005 WhitePaper Febrero de 2008

Autor: Microsoft Licencia: Cita Fuente: Ayuda de Windows

Mi primer servidor. Fernando Fernández Consultor Preventa HP ISS

Seminario de Informática

GESTIÓN DOCUMENTAL PARA EL SISTEMA DE CALIDAD

DBSURE. Disponemos de una copia de la base de datos de forma remota, que podemos contabilizar como segundo juego de copias.

Instalación de la SOA Suite 11g Instalación de los requisitos previos 1. I nstalación de la JDK Nota: 2. I nstalación de la Base de Datos

Notas para la instalación de un lector de tarjetas inteligentes.

Guía de Inicio Respaldo Cloud

MANUAL DE AYUDA TAREA PROGRAMADA COPIAS DE SEGURIDAD

Componentes de una BD

PROYECTO ADMINISTRACIÓN ORACLE ENTERPRISE MANAGER

Arsys Backup Online Manual de Usuario

Instituto Tecnológico de Las América. Materia Sistemas operativos III. Temas. Facilitador José Doñe. Sustentante Robín Bienvenido Disla Ramirez

Oracle Database 10g R2 Enterprise Edition Physical Standby

V i s i t a V i r t u a l e n e l H o s p i t a l

SICAE S.L.L. Almansa nº Pozuelo de Alarcón (Madrid) Manual general de C. de Inventario/Ordenador V.1 Pag.

Escudo Movistar Guía Rápida de Instalación Dispositivos Symbian

- A continuación, se nos abrirá la siguiente ventana pidiendo contraseña, que el cliente haya especificado al instalar Wingest 7

TEMA 20 EXP. WINDOWS PROC. DE TEXTOS (1ª PARTE)

MANUAL WINDOWS MOVIE MAKER. Concurso de Gipuzkoa

CONCEPTOS BASICOS. Febrero 2003 Página - 1/10

ADMINISTRACIÓN DE BASES DE DATOS PREGUNTAS TEST SON SOLUCIÓN

Sitios remotos. Configurar un Sitio Remoto

ARANZADI INFOLEX COPIAS DE SEGURIDAD.

Estructura de una BD Oracle. datafiles redo log controlfiles tablespace objetos Estructura lógica. Tablespaces tablespace SYSTEM

Manual de configuración de Outlook 2010 ÍNDICE

Manual hosting acens

Oracle Database 10g: Taller de Administración I 1-2

Tutorial: Primeros Pasos con Subversion

UNIVERSIDAD DON BOSCO. FACULTAD DE INGENIERIA/ EIC.

Tenemos que instalar los programas de los usuarios también (los anteriormente mencionados) y los siguientes que vamos a nombrar.

AGREGAR UN EQUIPO A UNA RED Y COMPARTIR ARCHIVOS CON WINDOWS 7

RESOLUCIÓN DE ERRORES EN MOODLE CAMPUS VIRTUAL-BIRTUALA UPV-EHU

Contenido. cursos.cl / Teléfono:

Instalación de Tomcat7 en Ubuntu

Capítulo 9. Archivos de sintaxis

Servicio de Informática Vicerrectorado de Tecnologías de la Información y la Comunicación

COMO HACER BACKUP Y RESTAURAR ACTIVE DIRECTORY

SEPARAR Y ADJUNTAR UNA BASE DE DATOS. Separar una base de datos

4. Recuperación Manual

Programa de Ayuda EMCS Instalación Versión SQL Server Versión Marzo 2010

Instalar protocolo, cliente o servicio nuevo. Seleccionar ubicación de red. Práctica - Compartir y conectar una carpeta

REDES DE ÁREA LOCAL. APLICACIONES Y SERVICIOS EN WINDOWS

MANUAL COPIAS DE SEGURIDAD

Oracle 12c DISEÑO Y PROGRAMACIÓN

Manual: Gestor de contenidos e-gim cms. 6 abril 2010

GESTION DE LA BASE DE DATOS

MANUAL PARA GESTIÓN DE INCIDENCIAS INFORMÁTICAS

1

Instant Recovery System. versión FRACTALIA Software

MANUAL DE AYUDA MÓDULO PDA ALMACEN E INVENTARIO

APROVECHAR LA BASE DE DATOS BIBLIOGRÁFICOS REBECA CON EL PRO- GRAMA ABIES.

MANUAL DE AYUDA. SAT Móvil (Movilidad del Servicio Técnico)

COPIAS DE SEGURIDAD CON COBIAN BACKUP INSTALACIÓN Y CONFIGURACIÓN

Samsung Drive Manager Preguntas frecuentes

Muchos programas de aplicación contienen herramientas para proteger la información, por ejemplo, Microsoft Word que te permite:

Manual CMS Mobincube

INSTALACIÓN DE MEDPRO

COPIA DE SEGURIDAD CON NTBACKUP

GENERACIÓN DE ANTICIPOS DE CRÉDITO

Guía de instalación de la carpeta Datos de IslaWin

Manual de Usuario De Respaldo y Restauración de Información

Manual básico de utilización de Windows

Accede a su DISCO Virtual del mismo modo como lo Hace a su disco duro, a través de:

10. El entorno de publicación web (Publiweb)

Administración Básica de Oracle10g

CONFIGURACION AVANZADA DE MOZILLA THUNDERBIRD

INSTRUCCIONES ACTUALIZACION PASO A PASO a MICROSOFT WINDOWS-7 (rev.1.0):

Mi primer servidor. Fernando Fernández Consultor Preventa HP ISS

MANUAL DE INSTALACIÓN

Activación de un Escritorio Remoto

Realización de Backups

Backup de Exchange 2003 con EXMERGE

Software Criptográfico FNMT-RCM

MANUAL DEL INSTALADOR

Operación Microsoft Access 97

Mini-guía: Gestión Backup

Transcripción:

Objetivos: - Conocer los procedimientos para la realización de copias de seguridad lógicas o físicas desde línea de comandos o desde Enterprise 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 de los ficheros de control. - 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. 1

INTRODUCCIÓN: Planear una buena política de copias de seguridad es la mejor forma de conservar la información ante un error físico del sistema. Esta tarea es imprescindible para conservar la integridad de la base de datos ante una catástrofe. Utilizaremos Oracle 11g sobre Windows2003 Server. PROCEDIMIENTOS PARA LA CREACION DE COPIAS: 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 BD. Entre estos se encuentran los backups del SO, los backups en frío y los backups en caliente. Backups del SO Este tipo de backup implica parar la BD en modo normal y esto la hace inaccesible el sistema mientras se lleva a cabo. Backups de la BD en Frio Los backups en frio implican parar la BD en modo normal y copiar todos los ficheros sobre los que se asienta. Antes de parar la BD hay que parar también todas las aplicaciones que estén trabajando con la BD. Una vez realizada la copia de los ficheros, la BD se puede volver a arrancar. Backups de la BD en Caliente El backup en caliente se realiza mientras la BD está abierta y funcionando en modo ARCHIVELOG. Habrá que tener cuidado de realizarlo cuando la carga de la BD 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 BD, así como restaurarlos o moverlos de una BD 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. 2

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). 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. En que modo trabaja nuestra BD?: El comando archive log list nos muestra si la base de datos está en modo archivelog o noarchivelog y si el archivado automático está funcionando: 3

2. 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 deberia 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; Tambien podriamos 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 parametro = valor SCOPE=[spfile, memory, both] *La clausula 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 en spfile.ora y lo aplica en memoria). *Para log_archive_start necesitamos scope=spfile ya que es un parametro estático y necesita reiniciar la BD para que el cambio surja efecto. Al contrario log_archive_dest es dinámico y para su modificacion no necesitamos reiniciar la BD. 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 NOTA: Previamente habría que haberse conectado, con privilegios adecuados, a la base de datos sobre la que se quiere realizar el cambio. 4

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 paramentro log_archive_start=true, este modo arrancara automaticamente: > 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 automaticamente: > alter system archive log start; Con esto ya tendríamos configurado el modo archivelog de una base de datos Oracle. 5

3. 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 5. Desactivamos el archivado automático. Al hacer el paso 3 realiza este automaticamente: > alter system archive log stop Con esto ya tendriamos desactivado el modo archive log de una base de datos Oracle. 6

BACKUPS FISICOS(Desde linea de Comandos): Vamos a exponer como realizar copias de seguridad fisicas en frio y en caliente y su posible restauración ante un desastre. Para esta ultima(copia en caliente) deberemos tener activado el modo Archive Log. BACKUPS EN FRIO: El primer paso es parar la BD con el comando shutdown normal. Si la BD se tiene que parar con inmediate o abort debe rearrancarse con el modo RESTRICT y vuelta a parar en modo normal. Después se copian los ficheros de datos, los de redo log y los de control, además de los redo log archivados y aún no copiados. Una buena idea es automatizar todo este proceso con los scripts correspondientes, de modo que no nos olvidemos de copiar ningún fichero. Pero ahora nos centraremos en realizar la copia manualmente para analizar cada procedimiento. Como este tipo de backup es una copia de los ficheros de la BD, si estos contienen algún tipo de corrupción, la traspasaremos a la copia de seguridad sin detectarla. Por esto es importante comprobar las copias de seguridad. Los pasos que hay que seguir para realizar un backup en frió serían: 1. Conocer y listar la ubicación de los datafiles, controlfiles, redo log y redo log archivados:. Esto se puede hacer ejecutando: select file_name from dba_data_files; select name from v$controlfile; 7

select member from v$logfile; select name from v$archived_log; 2. Tirar la base de datos mediante shutdown normal o shutdown inmediate. 3. Copiar los archivos datafiles, controlfiles y logfiles a un medio de backup preferido como cinta, disco duro, otra máquina, etc. Ademas si nos interesa podemos hacer una copia de init.ora. $>COPY E:\oracle\app\Administrador\product\11.1.0\db_1\database\INITorcl.ORA E:\backups_oracle\binit.ora Mediante simbolo de sistema podemos exportar la variable ORACLE_FICHEROS para no tener que trabajar con rutas tan largas ya que en este caso los ficheros de los que necesitamos hacer copia estan en la misma ruta. $>SET ORACLE_FICHEROS=E:\ORACLE\APP\ADMINISTRADOR\ORADATA\ORCL\ DATAFILES: $>COPY %ORACLE_FICHEROS%\USERS01.DBF E:\backups_oracle\bUSERS01.DBF $>COPY %ORACLE_FICHEROS%\UNDOTBS01.DBF E:\backups_oracle\bUNDOTBS01.DBF $>COPY%ORACLE_FICHEROS%\SYSAUX01.DBF E:\backups_oracle\bSYSAUX01.DBF $>COPY%ORACLE_FICHEROS%\SYSTEM01.DBF E:\backups_oracle\bSYSTEM01.DBF 8

$>COPY%ORACLE_FICHEROS%\EXAMPLE01.DBF E:\backups_oracle\bEXAMPLE01.DBF CONTROLFILE: $>COPY %ORACLE_FICHEROS%\CONTROL01.CTL E:\backups_oracle\bCONTROL01.CTL $>COPY %ORACLE_FICHEROS%\CONTROL02.CTL E:\backups_oracle\bCONTROL02.CTL $>COPY %ORACLE_FICHEROS%\CONTROL02.CTL E:\backups_oracle\bCONTROL02.CTL LOGFILE: $>COPY %ORACLE_FICHEROS%\REDO01.LOG E:\backups_oracle\bREDO01.LOG $>COPY %ORACLE_FICHEROS%\REDO02.LOG E:\backups_oracle\bREDO02.LOG $>COPY %ORACLE_FICHEROS%\REDO03.LOG E:\backups_oracle\bREDO03.LOG LOG ARCHIVED FILE: A este tipo de log se le puede especificar varios destinos por lo que no hace falta estar copiandolos de un sitio a otro, solo definirle el destino deseado al activar el modo archive log. 9

BACKUPS EN CALIENTE: Este metodo es practicamente igual que el anterior, a diferencia de que; no necesita parar la base de datos, tan solo deberemos desactivar los tablespaces de los que se esten haciendo copia en ese momento, y tener activado el modo Archive Log. DATAFILES Para ello deberemos seguir los siguientes pasos: 1. Primero tenemos que ver que datafiles tenemos en nuestra base de datos, para ellos podemos realizar la siguiente consulta a la tabla dba_data_files. select tablespace_name,file_name from dba_data_files order by tablespace_name; 2. Para cada uno de los datafiles asociados a un tablespace hacemos lo siguiente: SQL>Alter tablespace <nonbre_tablespace> begin backup; -Copiamos a otro sitio todos los datafiles, con la utilidad COPY del SO, tal como vimos en las copias en frio. Ejem: $>COPY %ORACLE_FICHEROS%\USERS01.DBF E:\backups_oracle\bUSERS01.DBF... SQL>Alter tablespace end backup; SQL>Alter system switch logfile; Como observamos bloqueamos el tablespace, copiamos todos los datafiles al lugar donde queramos realizar el backup y por último desbloqueamos el tablespace y forzamos los redo. 10

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 librerar 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>XCOPY ARCHIVELOG E:\backups_oracle /E Con este ultimo 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 parametros 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 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'; 11

RECUPERACIÓN DE LA BD: 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-MM- DD:HH24:MI:SS' La sintaxis de este comando: RECOVER [AUTOMATIC] [FROM 'localizacion'] [BD] [UNTIL CANCEL] [UNTIL TIME fecha] [UNTIL CHANGE entero] [USING BACKUP CONTROLFILE] 12

Las opciones entre corchetes son opcionales: 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 BD 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 BD 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] -RECUPERACION DE UN FICHERO DE DATOS La BD debe estar abierta o cerrada, dependiendo del fichero a recuperar. Si el fichero a recuperar es de un tablespace de usuario la BD puede estar abierta, pero con el fichero a recuperar offline. Si el fichero es del tablespace SYSTEM la BD 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] 13

BACKUPS LÓGICOS(Desde linea de Comandos): Este tipo de backups copian el contenido de la BD pero sin almacenar la posición física de los datos. Se realizan con la herramienta export que copia los datos y la definición de la BD en un fichero en un formato interno de Oracle. Para realizar un export la BD debe estár abierta. Export asegura la consistencia en la tabla, aunque no entre tablas. Si se requiere consistencia entre todas las tablas de la BD entonces no se debe realizar ninguna transacción durante el proceso de export. Esto se puede conseguir si se abre la BD en modo RESTRICT. Entre las ventajas de efectuar un export están las siguientes: Se puede detectar la corrupción en los bloques de datos, ya que el proceso de export fallará. Protege de fallos de usuario, por ejemplo si se borra una fila o toda una tabla por error es fácil recuperarla por medio de un import. Se puede determinar los datos a exportar con gran flexibilidad. Se pueden realizar exports completos, incrementales y acumulativos. Los backups relizados con export son portables y sirven como formato de intercambio de datos entre BDs y entre máquinas. Una de las desventajas de realizar backups lógicos con export es que son mucho más lentos que los backups físicos. 14

Parámetros de Export Parámetro Defecto Descripción USERID indefinido el username/password del usuario que efectua el export. BUFFER dependiente del SO El tamaño en bytes del buffer utilizado. FILE expdat.dmp el nombre del fichero destino. GRANTS Yes indica si se exportan también los derechos. INDEXES Yes indica si se exportan también los índices. ROWS Yes indica si se exportan también las filas de las tablas, o sólo las definiciones de las tablas. CONSTRAINTS Yes indica si se exportan también las restricciones. COMPRESS Yes indica si se exporta en modo comprimido. FULL No indica si se exporta la BD entera. OWNER usuario actual una lista de usuarios cuyos objetos se quieren exportar. TABLES indefinido la lista de tablas a exportar. RECORDLENGT H dependiente del SO la longitud en bytes del registro del fichero. INCTYPE indefinido el tipo de export incremental. RECORD Yes indica si se anota el export incremental en las tablas SYS.INCVID y en SYS.INCEXP. PARFILE indefinido el fichero de parámetros. 15

Modos de Export Existen tres modos de realizar una exportación de datos: Modo Tabla Exporta las definiciones de tabla, los datos, los derechos del propietario, los índices del propietario, las restricciones de la tabla y los disparadores asociados a la tabla. Modo Usuario Exporta todo lo del modo de Tabla más los clusters, enlaces de BD, vistas, sinónimos privados, secuencias, procedimientos, etc. del usuario. Modo BD Entera Completo Además de todo lo del modo Usuario, exporta los roles, todos los sinónimos, los privilegios del sistema, las definiciones de los tablespaces, las cuotas en los tablespaces, las definiciones de los segmentos de rollback, las opciones de auditoría del sistema, todos los disparadores y los perfiles. El modo BD entera puede ser dividido en tres casos: Completo, Acumulativo e Incremental. Estos dos últimos se toman menos tiempo que el completo, y permiten exportar sólo los cámbios en los datos y en las definiciones. Exporta todas las tablas de la BD e inicializa la información sobre la exportación incremental de cada tabla. Después de una exportación completa, no se necesitan los ficheros de exportaciones acumulativas e incrementales de la BD anteriores. $ exp userid=system/manager full=y inctype=complete constraints=y file=full_export_filename Acumulativo Exporta solo las tablas que han sido modificadas o creadas desde la última exportación Acumulativa o Completa, y registra los detalles de exportación para cada tabla exportada. Después de una exportación acumulativa, no se necesitan los ficheros de exportaciones incrementales de la BD anteriores. Incremental $expuserid=system/manager full=y inctype=cumulative constraints=y file=cumulative_export_filename Exporta todas las tablas modificadas o creadas desde la última exportación Incremental, Acumulativa o Completa, y registra los detalles de exportación para cada tabla exportada. Son interesantes en entornos en los que muchas tablas permanecen estáticas por periodos largos de tiempo, mientras que otras varían y necesitan ser copiadas. Este tipo de exportación es útil cuando hay que recuperar rápidamente una tabla borrada por accidente. $ exp userid=system/manager full=y inctype=incremental constraints=y file=incremental_export_filename 16

RECUPERACION DE BACKUPS LÓGICOS: Oracle dispone de la herramienta import para restaurar los datos de una BD a partir de los ficheros resultados de un export. Import lee los datos de los ficheros de exportación y ejecuta las sentencias que almacenan creando las tablas y llenándolas de datos. Parámetros del Import Parámetro Defecto Descripción USERID indefinido el username/password del usuario que efectua el import. BUFFER dependiente del SO El tamaño en bytes del buffer utilizado. FILE expdat.dmp el nombre del fichero de exportación a importar. SHOW IGNORE No Yes indica si se muestran los contenidos del fichero de exportación, sin importar ningún dato. indica si ignorar los errores producidos al importar un objeto que ya existe en la BD. GRANTS Yes indica si se importan también los derechos. INDEXES Yes indica si se importan también los índices. ROWS Yes indica si se importan también las filas de las tablas. FULL No indica si se importan el fichero entero. FROMUSER TOUSER Indefinido Indefinido una lista de los usuarios cuyos objetos se han exportado. una lista de los usuarios a cuyo nombre se importan los objetos. TABLES indefinido la lista de tablas a importar. RECORDLENGTH dependiente del SO la longitud en bytes del registro del fichero. INCTYPE indefinido el tipo de import incremental (SYSTEM o RESTORE). COMMIT No indica si se efectua un commit después de importar cada fila. Por defecto, import efectua un commit después de cargar cada tabla. PARFILE indefinido el fichero de parámetros. 17

Para importar un export incremental se puede efectuar la siguiente secuencia de pasos: 1. Utilizar la copia más reciente del import para restaurar las definiciones del sistema: $ imp userid=sys/passwd inctype=system full=y file=export_filename 2. Poner los segmentos de rollback online. 3. Importar el fichero de exportación completa más reciente: $ imp userid=sys/passwd inctype=restore full=y file=filename 4. Importar los ficheros de exportación en modo acumulación desde la exportación completa más reciente, en orden cronológico: $ imp userid=sys/passwd inctype=restore full=y file=filename 5. Importar los ficheros de exportación en modo incremental desde la exportación completa o acumulativa más reciente, en orden cronológico: $ imp userid=sys/passwd inctype=restore full=y file=filename 18

BACKUPS DESDE ENTERPRISE MANAGER: Una vez logueados en EM, iremos al apartado Disponibilidad y apuntaremos a Planificar Copia de Seguridad. Como vemos nos da 2 opciones a elegir. En este documento analizaremos la opción personalizada con toda la la base de datos. Dedeberemos conectarnos con los credenciales de host para realizar esta tarea. 19

Como es la primera copia que realizamos deberiamos elegir Copia de Seguridad Completa Para el modo de copia elegiremos si deseamos hacer la copia con la base de datos abierta o cerrada. logs. En las opciones avanzadas tan solo añadiremos que realize copia tambien de los archive 20

En este paso elegiremos el destino de la copia. Como no dispongo de dispositivo de cintas paso a continuar explicando la opción Disco. (La ubicación que ha tomado para la opción Disco esta asignada desde RMAN). 21

Introducimos nombre si lo deseamos y la descripción, y lo planificamos para que se realize una vez y de forma inmmediata. 22

Revisamos que todo esté correcto y ejecutamos el trabajo. Si todo a ido bien deberia aparecer esto: 23

RECUPERACIÓN DESDE ENTERPRISE MANAGER: Para realizar una recuperación desde EM, iremos a Disponibilidad y seleccionamos Realizar Recuperción. En ambitos de recuperación podemos seleccionar toda o parte de la base de datos para recuperar. Para el ejemplo hemos borrado el datafile USERS01.DBF(OFFLINE) despues de realizar el backup y ahora vamos a intentar recuperarlo. Para ello usaremos la copia que acabamos de realizar. Iniciamos oracle en modo mount y arrancamos EM. Al no poder iniciar nos encontramos con esto una vez logueados. 24

Pinchamos en Realizar Recuperación. Introducimos los credenciales de host.continuar Nos conectamos como sysdba. 25

En el ambito de recuperación elegimos Archivos de Datos y en el tipo de operación restaurar hasta hora actual. Pinchamos en recuperar. 26

Vemos como EM localiza la ruta en conflicto y te la presenta para seleccionarla. Siguiente. También podemos definir el destino de la restauración. Para el ejemplo nos interesa que se ubiquen en el mismo directorio. 27

Podemos revisar los parametros RMAN para ver y comprender las acciones realizadas por debajo de EM. Una vez todo revisado procedemos a ejecutar. Esto lo que hara será tomar del backup el fichero y llevarlo al destino aplicandole los cambios hasta el momento de la perdida permitiendo asi el inicio normal de la BD con tablespace online. Una vez finalizado podemos pinchar en Abrir Base de Datos y esta se reiniciara y se abria automaticamente despues de ver insertado nuestros credenciales.. 28

VISTAS DINÁMICAS: V$DATAFILE(Fichero de datos) V$TABLESPACE(Tablespaces) 29

V$CONTROLFILE(Ficheros de Control) V$LOGFILE(Ficheros Redo Log) 30

V$ARCHIVED_LOG(Archivado de Logs) V$PARAMETER(Interesante vista para ver los parametros de Oracle) 31

AUTOBACKPS CONTROLFILE: Para activar los backup automaticos de los ficheros de control podemos recurrir a RMAN. ACTIVANDO: 1.Abrimos una ventana de RMAN(C:\rman target <user/pwd>@<sid> 2.Una vez dentro, si queremos, podemos ejecutar un show all para ver los valores por defecto. 3.Especificamos la ruta destino: RMAN> CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'E:\backups_oracle\AUTO_backup\ORCL_%F.ctl.bck'; 4.Activamos haciendo lo siguiente: RMAN>CONFIGURE CONTROLFILE AUTOBACKUP ON; NOTA: No se generaran los backups hasta que haya un cambio en la estructura de la BD. DESACTIVANDO: Para desactivar entramos en RMAN y ejecutamos: RMAN>CONFIGURE CONTROLFILE AUTOBACKUP OFF; 32

CLONACIÓN DE LA BD CON RMAN: 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. 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. 33

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'; 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/oracle/ oradata/copia2/control02.ctl','/u01/app/oracle/oradata/copia3/control03.ctl' set db_recovery_file_dest_size = '2294967296'; } 34

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 Metodos disponibles: Metodo de Backup Tipo Versión Disponible Requerimientos Recovery Manager (RMAN) Fisico Oracle 8 ó mayor Almacenamiento en disco ó cinta Backup Manual (S.O.) Fisico Todas las versiones Herramienta de copia de archivos del sistema operativo Export Lógico Todas las versiones N/A Enterprise Backup Utility (EBU) Fisico Oracle 7 Almacenamiento externo 35

Tipos de backup disponibles: Tipo de backup RMAN Backup Manual Export Backup en frio (Cold Backup - Closed Backup) Soportado - Requiere que la instancia esté montada Soportado NO soportado Backup en caliente (Hot Backup - Open Backup) Soportado en forma automática Requiere los comandos Begin/End Backup Requiere Undo para mantener consuistencia Backup Incremental Soportado NO soportado NO soportado Detección de bloques corruptos Soportado. Se visualiza con las vistas V$BACKUP_CORRUPTI ON NO soportado Soportado. Se visualiza en el Log. Catálogo de backups Soportado NO soportado NO soportado Resguardo de archivos de inicio Comandos independientes S.O. Soportado Soportado NO soportado Soportado NO soportado Soportado 3. Elección del formato de Backup - Juegos de Copias (Backup Sets) - Copias Imágen - 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 despues 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. 36