migracion de bases oracle

30
RMAN Se ha diseñado para copias de seguridad y de recuperación es una extensión de la utilidad Enterprise Backup (UER). RMAN realiza copias de seguridad completas, físicas, consistentes de sus archivos de base de datos. Recovery Manager es una aplicación cliente / servidor que utiliza las sesiones de servidor de base de datos para realizar copias de seguridad y recuperación. Almacena metadatos sobre sus operaciones en el archivo de control de la base de datos de destino y, opcionalmente, en un esquema de catálogo de recuperación en una base de datos Oracle. El entorno RMAN consiste en los servicios públicos y las bases de datos que juegan un papel en una estrategia de copia de seguridad y recuperación. Una configuración típica RMAN utiliza el siguiente: RMAN ejecutable: se incluye automáticamente con la instalación del software de Oracle. Su ubicación es específica de la plataforma y por lo general se encuentra en el mismo lugar que los otros ejecutables de Oracle. En los sistemas Unix, por ejemplo, el ejecutable RMAN se encuentra en $ ORACLE_HOME / bin. Para iniciar el ejecutable, entra el nombre del archivo en la línea de comandos. Por ejemplo, en un sistema UNIX, escriba: % Rman Base de datos de destino: es a la que RMAN realizara el respaldo de seguridad, restauración o recuperación. Puede utilizar un solo catálogo de recuperación en conjunto con varias bases de datos de destino RMAN Repository: es un conjunto de metadatos que RMAN utiliza para almacenar información sobre la base de datos de destino y sus operaciones de backup y recuperación. Entre otras cosas, RMAN almacenes de información sobre: o conjuntos de copia de seguridad o Copias de imágenes (incluyendo Redo Logs) o Copias proxy

Upload: chopiz-yola-kurosaki

Post on 04-Dec-2015

235 views

Category:

Documents


3 download

DESCRIPTION

tres tipos de migracion RMAN, IMPDMP,EXPDMP,IMPORT/EXPORT

TRANSCRIPT

Page 1: Migracion de Bases Oracle

RMAN Se ha diseñado para copias de seguridad y de recuperación es una extensión de la utilidad Enterprise Backup (UER). RMAN realiza copias de seguridad completas, físicas, consistentes de sus archivos de base de datos.

Recovery Manager es una aplicación cliente / servidor que utiliza las sesiones de servidor de base de datos para realizar copias de seguridad y recuperación. Almacena metadatos sobre sus operaciones en el archivo de control de la base de datos de destino y, opcionalmente, en un esquema de catálogo de recuperación en una base de datos Oracle.

El entorno RMAN consiste en los servicios públicos y las bases de datos que juegan un papel en una estrategia de copia de seguridad y recuperación. Una configuración típica RMAN utiliza el siguiente:

RMAN ejecutable: se incluye automáticamente con la instalación del software de Oracle. Su ubicación es específica de la plataforma y por lo general se encuentra en el mismo lugar que los otros ejecutables de Oracle. En los sistemas Unix, por ejemplo, el ejecutable RMAN se encuentra en $ ORACLE_HOME / bin.Para iniciar el ejecutable, entra el nombre del archivo en la línea de comandos. Por ejemplo, en un sistema UNIX, escriba: % Rman

Base de datos de destino: es a la que RMAN realizara el respaldo de seguridad, restauración o recuperación. Puede utilizar un solo catálogo de recuperación en conjunto con varias bases de datos de destino

RMAN Repository: es un conjunto de metadatos que RMAN utiliza para almacenar información sobre la base de datos de destino y sus operaciones de backup y recuperación. Entre otras cosas, RMAN almacenes de información sobre:

o conjuntos de copia de seguridad o Copias de imágenes (incluyendo Redo Logs)o Copias proxyo El esquema de base de datos destinoo Ajustes de configuración persistentes

Software de gestión de medios: Para almacenar las copias de seguridad en cinta, RMAN requiere un gestor de medios de comunicación. Un administrador de medios de comunicación es un programa que carga, etiqueta y descarga medios secuenciales como unidades de cinta que se utilizan para realizar copias de seguridad y recuperación de datos

De estos componentes, se requieren sólo el ejecutable RMAN y base de datos de destino. RMAN almacena automáticamente sus metadatos en el archivo de control de la base de datos de destino, por lo que la base de datos del catálogo de recuperación es opcional. Sin embargo, el mantenimiento de un catálogo de recuperación es altamente recomendable. Si se crea un catálogo en un equipo diferente, y si la máquina de producción falla completamente, entonces usted tiene toda la información de restauración y recuperación que necesita en el catálogo.

Page 2: Migracion de Bases Oracle

Migración de base de datos de Windows a Linux Usando RMAN1.- Compruebe la compatibilidad de plataforma entre el origen y destino OS

2.- Inicie la base de datos en modo de sólo lectura

3.- Compruebe disposición de la base de datos para el transporte de Windows a Linux

Si la ejecución de dbms tdb.check_db no devuelve ninguna excepción, eso significa que la base de datos está listo para transporte a la plataforma de destino.

Page 3: Migracion de Bases Oracle

4.- Compruebe si hay objetos externos

Si existe cualquier objeto externo toman nota de ellos, tendrán que ser atendidos a manualmente

5.- Uso del comando RMAN CONVERT DATABASE

Después de haber ejecutado con éxito los pasos de chequeo, la base de datos está abierta en modo de sólo lectura, entonces el comando convert database puede ser ejecutado con RMAN. En este ejemplo, no se utiliza el db_file_name_convert '<source-path> "<ruta de destino>' debido a que la base de datos está utilizando (OMF), al utilizar OMF RMAN no genera ni muestra los nuevos nombres de archivo en la salida del comando convert database. Al final del proceso de conversión RMAN muestra información sobre cómo llevar a cabo la conversión en la plataforma de destino.

Page 4: Migracion de Bases Oracle
Page 5: Migracion de Bases Oracle

6.- Copiar archivos de datos convertidos, Generar Transport Script y Archivo de Parámetros para Linux

Copiar los archivos generados en el servidor de Linux, que incluyen todos los archivos de datos convertidos, el transprt Scrip y el pfile generado. Si es necesario crear en ese momento los directorios que va a necesitar en el servidor Linux, para el destino de dump y flash Area Recovery, como son:

Page 6: Migracion de Bases Oracle

Puede utilizar ftp para copiar los archivos necesarios en el servidor Linux. En este ejemplo se montara en el servidor Linux el directorio de la nueva base de datos, por lo que sólo se mueven los archivos convertidos a un directorio predefinido. Todos los archivos convertidos tienen la cadena “44TM” como parte de sus nombres:

Por ejemplo: O1_MF_SYSTEM_44TM3OPF_.DBF, mientras se encuentren en la ubicación de los datafile, se ejecuta el comando de traslado al nuevo destino:

Mover el pfile generado

Compruebe que todos los archivos necesarios se encuentran en el directorio ORCLLNX

Page 7: Migracion de Bases Oracle

7.- Editar init.ora para la nueva base de datos

El comando Convert RMAN ejecutado en Windows genera un archivo de parámetros que necesita ser editado para ser utilizado en el servidor Linux Objetivo

Pfile generado por RMAN

El Pfile editado para ser utilizado en Linux.

Page 8: Migracion de Bases Oracle

8.- Editar el Scrip Trasporte

Antes de ejecutar el script de transporte en el servidor Linux objetivo tenemos que editarlo para establecer las rutas correctas para Datafiles, controlfiles y directorios dump, también es posible que desee cambiar el valor de los parámetros de ajuste.

Scrip generado por RMAN

Page 9: Migracion de Bases Oracle

Scrip editado para ejecutarse en Linux

Page 10: Migracion de Bases Oracle

9. - Ejecutar el Scrip de trasporte

Page 11: Migracion de Bases Oracle
Page 12: Migracion de Bases Oracle

10.- Cambiar el identificador de base de datos

Page 13: Migracion de Bases Oracle

Para cambiar el identificador de base de datos que necesita para utilizar la utilidad NEWDBID "nid". Se ejecuta desde sqlplus teniendo la base de datos montada:

Para cambiar el DBID

Para comprobar el DBID y el nombre de la base de datos

Cambio del DBID, Ejecución de registro:

Page 14: Migracion de Bases Oracle
Page 15: Migracion de Bases Oracle

11.-Checar integridad de la base de datos

Page 16: Migracion de Bases Oracle

Comprobación del estado de los componentes después del transporte:

Page 17: Migracion de Bases Oracle

Import Data Pump y Export Data Pump Export Data Pump es una utilidad para la descarga de datos y metadatos en un conjunto de archivos del sistema operativo llamado un conjunto de archivos de volcado. El conjunto de archivos de volcado se puede importar sólo por la utilidad Data Pump Import. El conjunto de archivos de volcado se puede importar en el mismo sistema o puede ser movido a otro sistema y se carga allí.

El conjunto de archivos dump se compone de uno o más archivos de disco que contienen datos de la tabla, los metadatos de objeto de base de datos, y la información de control. Los archivos se escriben en un formato binario de propietario. Durante una operación de importación, la utilidad Data Pump Import utiliza estos archivos para localizar cada objeto de base de datos en el conjunto de archivos dump.

Debido a que los archivos dump están escritos por el servidor, en lugar de por el cliente, el administrador de base de datos (DBA) debe crear objetos de directorio. Export Data Pump permite especificar que un trabajo debe mover un subconjunto de datos y metadatos, según lo determinado por el modo de exportación.

La utilidad Export Data Pump se invoca utilizando el comando expdp. Las características de la operación de exportación son determinadas por los parámetros de exportación que especifique. Estos parámetros pueden especificarse en la línea de comandos o en un archivo de parámetros.

Import Data Pump es una utilidad para cargar un archivo dump de exportación establecido en un sistema de destino. El conjunto de archivos dump se compone de uno o más archivos de disco que contienen datos de la tabla, los metadatos de objeto de base de datos, y la información de control. Los archivos se escriben en un formato binario de propietario. Durante una operación de importación, la utilidad Data Pump Import utiliza estos archivos para localizar cada objeto de base de datos en el conjunto de archivos dump.

Importación también se puede utilizar para cargar una base de datos destino directamente desde una base de datos fuente sin la intervención de archivos dump, esto se conoce como una importación de red.

La utilidad Import Data Pump se invoca utilizando el comando impdp. Las características de la operación de importación son determinadas por los parámetros de importación que especifique. Estos parámetros pueden especificarse en la línea de comandos o en un archivo de parámetros.

La idea principal que debemos tener clara es que Oracle Data Pump se ejecuta en el servidor, digamos que es una tarea en el servidor. Anteriormente podíamos instalar los binarios de export/import en una máquina cualquiera (no necesariamente en el servidor, podía ser un PC cliente), estas herramientas se conectaban por Oracle Net a la BBDD y extraían/cargaban los datos. Actualmente con Data Pump lo que hacemos es programar una tarea en el servidor (sea por línea de comandos, sea con Enterprise Manager/Database Console o sea mediante PL/SQL), por tanto los ficheros de dump se generarán o leerán en el servidor de BBDD

Page 18: Migracion de Bases Oracle

Hay 4 tipos de exportación que se pueden realizar mediante la exportación (expdp) utilidad proporcionada por la bomba de datos en la base de datos Oracle. Estas exportaciones son los siguientes:

Exportación completa Esquema de Exportación Exportar tabla Exportación de tablas

Data Pump expdp Windows

1.- Hacer un directorio o crear una carpeta

Este paso debe ser realizado por usuarios con privilegios, como SYS o SYSTEM y el directorio debe ser creado en el sistema de servidor en lugar de sistema cliente.

Para el siguiente ejemplo se ha creado un directorio con el nombre Data Pump dentro de este una carpeta con el nombre Full Export en el directorio en la unidad D. Esta carpeta Full Export contendrá todos los archivos creados por la utilidad expdp de data pump.

2.- Hacer Directorio de objetos y otorgar privilegios

Inicie sesión en la base de datos como usuario SYS, para hacer un registro de un directorio de objetos en su base de datos con privilegios SYSDBA

Crear directorio de objeto, para crearlo utilizamos comando CREATE DIRECTORY.

Page 19: Migracion de Bases Oracle

En esta consulta ORCL_FULL es un directorio de objetos (se puede dar cualquier nombre que desee al directorio de objetos), el cual es sólo un nombre asignado a través de una ruta de directorio. O se puede decir que es sólo un puntero que apunta sobre un directorio, para el cual la utilidad expdp usara para almacenar todos los archivos exportados.

El comando CREATE DIRECTORY no creará ningún directorio real en el sistema este comando sólo ayudara en la creación de un directorio de objetos.

¿Por qué es necesaria Directorio de objetos? Se requiere para garantizar la seguridad e integridad de datos.

Lo siguiente después de crear un directorio de objetos es otorgar privilegios de lectura y escritura para el usuario llevara a cabo la exportación de datos.

Para realizar una exportación completa, debe tener el rol DATAPUMP_EXP_FULL_DATABASE. Por lo tanto tenemos que conceder este rol a nuestro usuario HR.

3.- Exportar los Datos

Ahora que lo hemos realizado todos los ajustes necesarios, podemos comenzar.

expdp es una utilidad para la descarga de los datos y metadatos en un conjunto de archivos del sistema operativo llamado conjuntos de archivos dump.

Los parámetros utilizados en el comando anterior:

User Login: El primer parámetro es un inicio de sesión de usuario. Aquí se proporciona la información de inicio de sesión del usuario con el que desea realizar la exportación. En este casose proporcionado a la entrada el usuario hr (Hr / Hr) acompañado con el SID de la base de datos que es ORCL.

Page 20: Migracion de Bases Oracle

Directorio: Utilizando el parámetro directorio que especifique la ubicación predeterminada a la que la exportación puede escribir el conjunto de archivos dump y el archivo de registro. En este caso el parámetro DIRECTORIO se establece en el orcl_full el directorio de objetos que se acaba de crear.

DUMPFILE: Utilizando el parámetro DUMPFILE para especifica los nombres, y, opcionalmente, los objetos de directorio de archivos dump para un trabajo de exportación.

El archivo dump se compone de uno o más archivos de disco que contienen datos de las tablas, metadatos de la base de datos de objeto e información de control. Estos archivos se escriben en formato binario y los archivos dump pueden ser importados únicamente por la utilidad de importación impdp. A medida que estos archivos se escriben en formato binario.

A medida que estos archivos se escriben en formato binario por el servidor usando la utilidad de exportación expdp no deben ser manipulados. El cambio de la información en estos archivos podría poner en peligro la coherencia de los datos que puede causar un error al importador.

LOGFILE: Generará un archivo de registro legible por el hombre el cual es muy útil en el seguimiento del estado de la exportación.

FULL: Indica que se desea realizar una exportación de base de datos completa. Este parámetro puede tener valores YES o NO. Si establece este parámetro a YES eso significa la utilidad expdp exportará todos los datos y metadatos de la base de datos.

Data Pump impdp WindowsEjecutar el siguiente comando con los nombres de los archivos generados en la exportación y el nombre del directorio donde se encuentran y donde se guardaran los archivos de registro.

Data Pump expdp Linux/Unix

1.- Asegúrese de que ha establecido la variable ORACLE_HOME en su entorno.

Page 21: Migracion de Bases Oracle

2.- Cree un directorio en el sistema, en el que va a poner el archivo Data Pump Oracle (dump).

3.- Lo siguiente que se necesita es crear el "directorio" de SQLPlus, debe iniciar la sesión como SYSDBA. Y el nombre de SID de la base de datos.

4.- Después de iniciar sesión en SQLPlus, ejecutar este comando

dbuser es el nombre de usuario que lo vamos a utilizar para la exportación y proceso de importación.

5.- También tenemos que dar los privilegios a dbuser para crear cualquier directorio y exportar/importar la base de datos completa.

6.- Ahora, para el proceso de copia de seguridad / exportación, escribimos este comando en la consola (terminal).

Page 22: Migracion de Bases Oracle

Data Pump impdp Linux/Unix1.- Para restaurar la base de datos / importar, escriba el siguiente comando:

Oracle Export e Import Originales

Este método es útil para realizar migraciones de bases de datos muy antiguas, también tiene la flexibilidad de poder migrar toda la base o parte de ella, no posee funcionalidad “Network_link”y es útil para migrar una base a una plataforma diferente.

Desventajas: Se requiere espacio adicional para almacenar el archivo que genera el Export Se requiere un largo tiempo desde que empieza el export hasta que termina el import.

Export/Import es una utilidad de Oracle para realizar backups lógicos de Oracle (y luego poderlos restaurar). Esto significa que copian el contenido de la BD pero sin almacenar la posición física de los datos. Para realizar estas operaciones la base de datos tiene que estar abierta.

Para crear el fichero de backup se utiliza la utilidad export y para importar el contenido o recuperar la base de datos se realiza import.

Este tipo de backup se utiliza en los siguientes casos:

Para realizar backups de bases de datos (pequeñas/medianas bases de datos ) Para corregir "Row Migration & Row Chaining" Detectar alguna corrupción en la base de datos, puesto que al hacer el export se lee toda

la bd. Para "migrar" una base de datos a otro servidor

Oracle Export Originals Linux/Unix

1.-Copia completa de la base de datos

Page 23: Migracion de Bases Oracle

file=/oracle9/export_orasite.dmp > Nombre y ubicación del archivo del export (el usuario oracle tiene que tener permisos para escribir ahí. La extensión de este archivo es dmp.

full=yes> Con esto indicamos que el export es completo, todos los esquemas de la base de datos y sus datos permisos, privilegios.

log=/oracle9/log/export_orasite.log > fichero para tener el log del export, el usuario oracle también tiene que tener permisos en ese directorio para escribir.

buffer=1000000 > reservamos buffer para la operación.

2.- Copia de tablas específicas de un usuario

En este caso realizamos sólo un backup de las tablas especificadas en el argumento tables del usuario Scott

3.- Copiar tablas de un usuario con una condición especifica

"Export interactivo"

Otra forma de realizar un export es poniendo simplemente en la línea de comando exp y esperar a que te vaya pidiendo la utilidad los parámetros que requiere.

De esta forma te pedirá el usuario, contraseña, si quieres hacer copia sólo de la estructura, con datos, sin datos, nombre del archivo, etc.

Oracle Import Originals Linux/Unix

Partiendo de un archivo realizado con la utilizad export podemos recuperar datos de toda la base de datos, de ciertas tablas, etc.

1.- Importar todo el archivo exportado

Page 24: Migracion de Bases Oracle

Importamos con el usuario system que tiene permisos para importar el archivo orasitefull.dmp dejando un log de dicha importación en import_log.log reservando un buffer de 100000

2.- Ejemplo2: Importar una tabla de un usuario concreto

Importamos del archivo orasitempleados.dmp sólo del usuario scott de ese archivo al esquema del usuario scott la tabla departamento

"Import interactivo"

Otra forma de realizar un import al igual que el export es introducir en la línea de comando imp y esperar a que te vaya pidiendo la utilidad los parámetros que requiere.

De esta forma te pedirá el usuario, contraseña, el archivo para importar, qué quieres importar del archivo, etc.

Oracle Export Originals Windows

1. - Inicio -> Ejecutar -> cmd

2.-cd C:\oracle\app\product\11.2.0\dbhome_1\BIN

3. - ejecutamos:

Para ejecutar el mismo comando como sysdba, se ejecuta:

Page 25: Migracion de Bases Oracle

Oracle Import Originals Windows

1.-Inicio -> Ejecutar -> cmd

2. - cd C:\oracle\app\product\11.2.0\dbhome_1\BIN

3.-Ejecutamos el siguiente comando para realizar la importación

# Herramientas/opciones de migracion 8i 9i 10g 11g 12c1 Oracle Export/Import Data Pump

2 Oracle Recovery Manager (RMAN)

3 Oracle Export/Import Originals