Está en la página 1de 23

MIGRACION DE BASE DE DATOS ALCALDIA DE SAN ANTONIO SENA

GESTION Y SEGURIDAD DE BASES DE DATOS

REALIZADO POR:

DIANA CAROLINA DELGADO SANTOS

SERVICIO NACIONAL DE APRENDIZAJE


AGOSTO 17 DE 2019
BOGOTA D.C.
MIGRACION DE BASE DE DATOS

A continuación realizaremos los pasos para configurar Oracle en el cual realizaremos la


migración de datos.

CONFIGURACIÓN DE IDIOMA

A continuación se presenta la configuración con un ejemplo:

 Seleccionar en inicio panel de control clic en reloj, idioma y región.


 En la siguiente ventana seleccionar administrativo.

 En esta ventana selecciona cambiar configuración regional del sistema.


 En esta ventana selecciona el idioma español (España)

 En esta ventana clic en aceptar.

CONFIGURACIÓN DE ORÍGENES DE BASE DE DATOS (ODBC)


 En panel de control buscamos herramientas administrativas clic y selecciona orígenes de
datos (ODBC).

 En la siguiente ventana clic en agregar.


 Buscamos SQL SERVER clic en finalizar.

 En la siguiente ventana en la columna del nombre coloca el nombre de a la base de datos y


en la columna del servidor colocamos (local) clic en finalizar.
 Introduce la password y pulsa el botón

 Se devuelve a la ventana administrador orígenes de datos y doble en clic en el nombre de la


base de datos.

 Automáticamente aparece esta ventana con el nombre de la base de datos clic en aceptar Y
finalizar. Ya queda configurada la base de datos con el (ODBC) terminado el proceso.
Copia De Seguridad Lógica En Línea Con Expdp Export En Oracle 11g

Oracle Database 11g permite hacer copia de seguridad lógica de los datos que componen la base de
datos: tablas, vistas, procedimientos almacenados, secuencias, funciones, disparadores, paquetes,
sinónimos, usuarios, etc. Dicha copia se realiza con el comando expdp y se realizará en línea (sin
detener la base de datos). Durante el proceso de export puede que caiga un poco el rendimiento
pero seguirá funcionando la base de datos normalmente. La utilidad expdp (Export) de Oracle
consulta la base de datos, incluyendo el diccionario de datos, y escribe el resultado en un archivo
binario llamado archivo de volcado de exportación. Puede exportar la base de datos completa,
usuarios determinados o tablas específicas (entre otras opciones de exportación).

Una vez exportados los datos, podrían importarse con el comando impdp (Import) en otra base de
datos o en la misma si queremos "sobreescribirla".

Requisitos Para Funcionamiento Del Comando Expdp De Oracle 11g Oracle Database 11g
Enterprise O Client

Así mismo, el primer requisito es disponer de Oracle Database 11g (bien en su versión
Enterprise o bien Oracle Database 11g Client. En loa siguientes artículos explicamos cómo
instalar Oracle Database 11g en un equipo con sistemas operativos Microsoft Windows:

 Instalar Oracle 11g x64 en Windows Server 2008 R2 Enterprise x64.


 Instalar Oracle Database 11g R2 Enterprise 64bits en Windows Server 2003 64 bits.
 Instalar Oracle Database 11g Standard Edition en Windows XP Profesional.
 Instalar Oracle Database 11g Release 1 en Microsoft Windows 7.

Usuario Y Contraseña De Oracle Y Del Sistema Operativo Con Permisos Suficientes

Otro de los requisitos es disponer de usuario y contraseña de Oracle con permisos suficientes
para hacer copias de seguridad. Normalmente el usuario SYS y el usuario SYSTEM tienen estos
permisos, aunque cualquier usuario con el Rol "DBA" podrá hacer copias de seguridad.

También deberemos disponer de un usuario y contraseña del sistema operativo con permisos
suficientes para leer y escribir en la carpeta destino del fichero de volcado (resultado del
export).Obviamente, además, deberemos disponer de espacio libre suficiente en el destino de la
copia de seguridad. En Oracle 11g con expdp el fichero de volcado (fichero resultante de la copia de
seguridad) se puede comprimir para ahorrar espacio.
Variable de entorno PATH apuntando a carpeta bin de Oracle

En la variable de entorno PATH del sistema operativo deberá existir la ruta de instalación de
Oracle y la carpeta "bin" donde se encuentra el comando "expdp". Para comprobar esto
podremos hacerlo de dos formas:

1. Desde el botón "Inicio" - "Todos los programas" - "Accesorios" - "Ejecutar" (o pulsando las
teclas Windows + R), introduciremos "cmd" y pulsaremos "Aceptar". En la ventana de MS-DOS
que aparece escribimos el comando:

set path

Debería aparecer algo así:

Path=C:/app/ajpdsoft/product/11.2.0/dbhome_1/bin;C:/Windows/system32;C:/W indows;
C:/Windows/System32/Wbem;C:/Windows/System32/WindowsPowerShell/v1.0/
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC

2. También es posible ver el valor de la variable de entorno PATH en Windows Server 2008 desde
las propiedades del sistema, desde el botón "Inicio" - pulsando con el botón derecho del ratón sobre
"Equipo" y seleccionando "Propiedades":
En la ventana de "Sistema" pulsaremos en "Configuración avanzada del sistema":

En la ventana de "Propiedades del sistema" seleccionaremos la pestaña "Opciones avanzadas" y


pulsaremos en "Variables de entorno":
En la ventana de "Variables de entorno", en "Variables del sistema" buscaremos la variable "Path".
En esta variable se especifica cada ruta (path) separada por punto y coma. Para consultar si está la
ruta de la carpeta "bin" de Oracle pulsaremos en "Editar":
En "Valor de la variable" debe aparecer la ruta de instalación de Oracle más la carpeta "bin",
algo así:

C:/Oracle/product/11.2.0/dbhome_1/bin

Esta variable de entorno es necesaria para que al programar y ejecutar un expdp desde una ventana
de MS-DOS, al escribir el comando desde cualquier carpeta el sistema, lo encuentre en la carpeta
"bin" de Oracle:
Si en la variable PATH no tenemos la carpeta "bin" de Oracle, para ejecutar el comando expdp
tendremos que indicar la ruta donde se encuentra o acceder a esa carpeta y ejecutarlo.

Objeto De Tipo Directory Creado En Oracle

Otro requisito indispensable para realizar un export (expdp) en Oracle Database 11g es disponer de
un objeto de tipo Directory creado en la base de datos. Este Directory debe apuntar a la unidad y
carpeta destino de la copia de seguridad.

Para crear este objeto Directory abriremos una ventana de MS-DOS (desde "Inicio" - "Ejecutar" -
"cmd"), abriremos SQL*Plus (utilidad para administrar Oracle desde la línea de comandos) con el
siguiente comando:

sqlplus /nolog

Nos conectaremos a Oracle con el comando:

connect usuario/contraseña as sysdba;


Crearemos el objeto directory con el comando:

create directory CARPETA_EXPORT as 'c:/backup/export';

Donde:

 CARPETA_EXPORT: será el nombre que le asignemos al directory, será el que usemos


en el comando export (expdp).
 'c:/backup/export': unidad y carpeta asignada al directory, será el destino de la copia de
seguridad export.

Para comprobar que el directorio se ha creado correctamente podemos ejecutar la siguiente select:

select directory_name from dba_directories;

Nos devolverá varios directory, entre ellos el creado anteriormente:

La carpeta de destino debe existir, si no está creada el export devolverá el error:

 ORA-39002: operación no válida


 ORA-39070: No se ha podido abrir el archivo
ORA-29283: operación de archivo no válida
 ORA-06512: en "SYS.UTL_FILE", línea 536
 ORA-29283: operación de archivo no válida
El archivo de volcado de exportación anterior no debe existir

Si ya existe un archivo de volcado de exportación el comando expdp dará error pues no reemplaza
uno existente, el error:

 ORA-39001: valor de argumento no válido


 ORA-39000: especificación de archivo de volcado errónea
 ORA-31641: no se ha podido crear el archivo de volcado
"c:/backup/export/copia_oracle_export.dmp"
 ORA-27038: el archivo creado ya existe
 OSD-04010: opción <CREATE> especificada; el archivo ya existe

Por lo tanto si decidimos crear una tarea programada para ejecutar este comando automáticamente
cada día deberemos, previamente, eliminar el archivo de volvado de exportación anterior antes de
ejecutar el expdp.

Parámetros Para Comando Expdp Export De Oracle 11g

El comando expdp en Oracle 11g tiene los siguientes parámetros (obtenidos ejecutando expdp
help=y):

 ATTACH: conectar a un trabajo existente. Por ejemplo,


ATTACH=nombre_trabajo.
 COMPRESSION: reduce el tamaño de un archivo de volcado. Los valores de palabras
clave válidos son: ALL, DATA_ONLY, [METADATA_ONLY] y NONE.
 CONTENT: especifica los datos que se van a descargar. Los valores de palabras clave
válidos son: [ALL], DATA_ONLY y METADATA_ONLY.
 DATA_OPTIONS: indicadores de opciones de nivel de datos. Los valores de palabra
clave válidos son: XML_CLOBS.
 DIRECTORY: objeto de directorio que se va a utilizar para los archivos de volcado y
log.
 DUMPFILE: lista de nombres de archivo de volcado de destino
[expdat.dmp]. Por ejemplo, DUMPFILE=scott1.dmp, scott2.dmp,
dmpdir:scott3.dmp.
 ENCRYPTION: cifra todo o parte del archivo de volcado. Los valores de palabras
clave válidos son: ALL, DATA_ONLY, ENCRYPTED_COLUMNS_ONLY,
 ESTIMATE: calcula estimaciones de trabajo. Los valores de palabras clave válidos son:
[BLOCKS] y STATISTICS.
 ESTIMATE_ONLY: calcula las estimaciones de trabajo sin realizar la
exportación.
 EXCLUDE: excluye tipos de objeto específicos. Por ejemplo,
EXCLUDE=SCHEMA:"='HR'".
 FILESIZE: especifica el tamaño de cada archivo de volcado en unidades de bytes.
 FLASHBACK_SCN: SCN utilizado para restablecer la instantánea de sesión.
 FLASHBACK_TIME: tiempo utilizado para buscar el valor de SCN
correspondiente más cercano.
 FULL: exporta toda la base de datos.
 HELP: muestra mensajes de ayuda.
 INCLUDE: incluye tipos de objetos específicos. Por ejemplo,
INCLUDE=TABLE_DATA.
 JOB_NAME: nombre del trabajo de exportación que se va a crear.
 LOGFILE: especifica el nombre del archivo log [export.log].
 NETWORK_LINK: nombre del enlace de base de datos remota al sistema de origen.
 NOLOGFILE: no se escribe el archivo log.
 PARALLEL: cambia el n·mero de workers activos para el trabajo actual.
 PARFILE: especifica el nombre del archivo de parámetros.
 QUERY: cláusula de predicado utilizada para exportar un subjuego de una tabla. Por
ejemplo, QUERY=employees:"WHERE identificador_departamento > 10".
 REMAP_DATA: especifica una función de conversión de datos. Por ejemplo,
REMAP_DATA=EMP.EMPNO:REMAPPKG.EMPNO.
 REUSE_DUMPFILES: sobrescribe el archivo de volcado de destino si existe.
 SAMPLE: porcentaje de datos para exportar.
 SCHEMAS: lista de esquemas que se van a exportar (esquema de conexión).
 SOURCE_EDITION: edición que se usará para extraer metadatos.
 STATUS: estado del trabajo de frecuencia (seg) que se va a controlar donde el valor
por defecto (0) mostrará el nuevo estado cuando esté disponible.
 TABLES: identifica una lista de tablespaces que se van a exportar. Por ejemplo,
TABLES=HR.EMPLOYEES,SH.SALES:SALES_1995.
 TABLESPACES: identifica una lista de tablespaces que se van a exportar.
 TRANSPORTABLE: especifica si el método transportable se puede utilizar. Los valores
de palabras clave válidos son: ALWAYS y [NEVER].
 TRANSPORT_FULL_CHECK: verifica segmentos de almacenamiento de todas las
tablas.
 VERSION: versión de los objetos que se van a exportar. Los valores de palabra cable
válidos son: [COMPATIBLE], LATEST o cualquier versión de base de datos válida.

Los Siguientes Comandos Son Válidos En El Modo Interactivo:

 ADD_FILE: agrega un archivo de volcado al juego de archivos de volcado.


 CONTINUE_CLIENT: vuelve al modo de registro. El trabajo se reiniciará si está
inactivo.
 EXIT_CLIENT: sale de la sesión del cliente y deja el trabajo ejecutándose.
 FILESIZE: tamaño de archivo (bytes) por defecto para los comandos ADD_FILE
posteriores.
 HELP: resume los comandos interactivos.
 KILL_JOB: desconecta y suprime un trabajo.
 PARALLEL: cambia el número de workers activos para el trabajo actual.
 REUSE_DUMPFILES: sobrescribe el archivo de volcado de destino si existe.
 START_JOB: inicia o reanuda el trabajo actual. Los valores de palabra clave válidos
son: SKIP_CURRENT.
 STATUS: estado del trabajo de frecuencia (seg) que se va a controlar donde el valor
por defecto (0) mostrará el nuevo estado cuando está disponible.
 STOP_JOB: cierra en orden la ejecución del trabajo y sale del cliente. Los valores de
palabra clave válidos son: IMMEDIATE.

Ejemplos De Copia De Seguridad Lógica En Línea Con Expdp Export En Oracle 11g

A continuación mostramos algunos ejemplos para realizar backup lógico de los datos de Oracle
Database 11g. Para ejecutar el comando expdp correctamente necesitaremos disponer de los
requisitos explicados aquí.

1. Ejemplo de export full (copia de seguridad completa de la base de datos) con un único
archivo de volcado:

expdp usuario/contraseña dumpfile=copia_oracle_export.dmp


logfile=copia_oracle_export.log directory=CARPETA_EXPORT full=y
Mientras se va realizando la copia lógica con expdp irá mostrando las tablas que va exportando y el
número de filas que contienen:

El comando anterior generará el fichero "copia_oracle_export.dmp" en la carpeta indicada en el


directory CARPETA_EXPORT con la copia de seguridad lógica de todos los datos de toda la base
de datos Oracle (todos los usuarios, vistas, tablas, sinónimos, procedimientos, funciones.). Generará
un fichero llamado "copia_oracle_export.log" con el resultado de la copia:
2. Ejemplo de export full con un único archivo de volcado comprimido:

expdp usuario/contraseña dumpfile=copia_oracle_export.dmp


logfile=copia_oracle_export.log directory=CARPETA_EXPORT full=y
compression=all

Como ejemplo, el archivo anterior sin compresión ocupaba 270MB, mientras que el comprimido
de la misma base de datos ha ocupado 68MB.

3. Ejemplo de export full con varios archivos de volcado de tamaño predefinido 100MB:

expdp usuario/contraseña dumpfile=copia_oracle_export_%U.dmp


logfile=copia_oracle_export.log directory=CARPETA_EXPORT full=y
filesize=100M

En negrita hemos indicado los caracteres "%U" en el nombre del fichero de volcado (dumpfile),
este parámetro indicará a Oracle que vaya creando tantos ficheros como necesite del tamaño
indicando acabando en el nombre con xxx01.dmp, xxx02.dmp, xxx03.dmp, ... Si no se indican
los caracteres "%U" y el archivo de volcado supera el tamaño de filesize, el expdp mostrará el
error:

ORA-39095: Se ha agotado el espacio del archivo de volcado: No se han podido asignar XXX bytes
El trabajo "SYSTEM"."SYS_EXPORT_FULL_01" se ha parado debido a un error fatal en
21:44:01
Este método de dividir el archivo de volcado resultante en ficheros de un tamaño especificado es
muy interesante. Si tenemos una base de datos que ocupe más de 10 ó 20 GB podremos tener
problemas en algunos sistemas operativos al generar ficheros de más de 10 ó 20 GB. Por ello este
comando es muy recomendable, permitirá generar ficheros de un tamaño máximo, generará tantos
como necesite.

En el ejemplo hemos indicado que como máximo cree ficheros de100MB, aunque lo habitual es
indicar 2000MB (2GB). El resultado del volcado quedará en varios ficheros:

4. Ejemplo de export del esquema de un usuario concreto de Oracle (tablas, vistas y objetos
de los que ese usuario es propietario):

expdp usuario/contraseña dumpfile=copia_oracle_export.dmp


logfile=copia_oracle_export.log directory=CARPETA_EXPORT
schemas=nombre_usuario

El comando de exportación anterior sólo exportará los objetos (tablas, vistas, etc.) de los que es
propietario el usuario "nombre_usuario". Este comando será mucho más rápido en su ejecución que
si usamos full=yes pues no exportará los objetos del sistema.
Copias De Seguridad

Utilizamos el comando pg_dump y escogemos la tabla de datos a la cual le sacaremos la copia de


seguridad y luego le damos la dirección en la que la vamos a guardar y la clase de documento que
va a ser en este caso es .bak pero puede ser .ora.

Luego buscamos el archivo en la dirección que le dimos y veremos el archivo que contendrá nuestra
copia de seguridad de la base de datos
Restaurar Base De Datos En Oracle

1. Iniciar una sesión desde un terminal del servidor como usuario Oracle

2. Conectarse al RMAN:

$ rman target / nocatalog

3. Iniciar la base de datos sin montarla y restaurar el pfile utilizando el autobackup:

RMAN> set DBID=248804095;

startup nomount;
run
{

restore spfile to pfile '/oracle/product/10.2.0/dbs/gobierno.ora' from '/Migra/c- 248804095-


20090130-04';

shutdown abort;

4. Iniciar la base de datos utilizando el pfile restaurado. RMAN>


set DBID=248804095;
RMAN> startup force nomount pfile =
/oracle/product/10.2.0/dbs/gobierno.ora';

5. Restaurar los archivos de control e la base de datos (control files) run


{

restore controlfile from '/pruebarman/c-248804095-20090130-04'; alter


database mount;
}
6. Restaurar los archivos de base de datos (data files) y restaurar la data al día del backup
utilizado.

run

restore database;
switch datafile all;
recover database;
}

7. Inicializar la base de datos para un normal funcionamiento. RMAN>


alter database open resetlogs;

8. Comprobar el funcionamiento de la base de datos restaurada, para ello se realizaran prueba


de conexión a la base de datos:

$ sqlplus / as sysdba SQL>


connect system;
SQL> connect [usuario diferente al sys o system];

Con esto podemos restaurar la base de datos en Oracle de esta manera obtendremos la
información.

También podría gustarte