Aa5- Evi 3-Migracion de Base de Datos

Embed Size (px)

Citation preview

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    1/53

    MIGRACIÓN DE BASE DE DATOS

    JOHN EDISON ORREGO MUÑOZ

    DIANA CAROLINA QUINTERO

    Presentado a:

     Andrés Julián Hoyos Caicedo

    Ingeniero de Sistemas

    SERVICIO NACIONAL DE APRENDIZAJE

    ESPECIALIZACIÓN EN GESTION DE BASES DE DATOS17 DE FEBRERO DE 2016

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    2/53

    INTRODUCCIÓN 

    Son varias causas que generalmente impulsan a una organización a migrar sus datos, como

    son: mejorar el desempeño de una base de datos, actualizar versiones, reducir costes oaplicar políticas de seguridad. 

    La migración consiste en la transferencia de datos de un sistema a otro y suele tener lugar en

    momentos de transición provocados por la llegada de una nueva aplicación, un cambio en el

    modo o medio de almacenamiento o las necesidades que impone el mantenimiento de la base

    de datos corporativa.

    En el siguiente trabajo se ejecutara un proyecto de migración de datos, tomando en cuenta la

    base de datos de la secretaria de Deportes, Recreación y Cultura de la Alcaldía San Antonio

    del Sena, con el fin de probar otros motores de bases de datos que puedan ser adquiridos por

    la misma. Dicho proceso será ejecutado desde el SMBD de origen SQL Server al SMBD

    destino MySQL, según lo establecido en la Plan de migración previamente elaborado.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    3/53

    OBJETIVOEn el siguiente manual se ejecutará la fase de planeación de migración de datos,descrita en el respectivo Plan de migración, lo cual permitirá la aplicación delprocedimiento de extracción, transformación, limpieza y carga de datos así como lavalidación de la consistencia de los datos migrados.

       Aprender a administrar una base de datos con MySQL.  Conocer algunas herramientas que ayudan a administrar una base de datos de

    MySQL.

    CONTENIDO

    Teniendo en cuenta las fases descritas en el Plan de migración de datos, se detallan acontinuación los ítems que corresponden a este manual:

    1. Instalación del Sistema Manejador de base de datos MySQL.2. Ejecución del Procedimiento de Extracción, Transformación, Limpieza y Carga

    de los datos de SQL Server a MySQL.

    3. Ejecución de migración de base de datos de la secretaria de Recreación deSQL Server a MySQL.

    4. Prueba y validación de la migración en la base de datos en MySQL.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    4/53

    MANUAL DE MIGRACIÓN DE DATOS DE SQL SERVER A MYSQL 

    Instalación del Sistema Manejador de Base de Datos Mysql

    Para el proceso de migración de datos de la secretaria de Recreación se ha seleccionado el SistemaManejador de base de datos MySQL como sistema destino, por tanto a continuación se describen los pasoscorrespondientes para su instalación:

    1. Se descarga la versión GPL de MySQL de la siguiente direcciónhttp://dev.mysql.com/downloads/mysql/ 

    2. Ejecutamos el instalador de MySQL en la máquina virtual.

    Se inicia el asistente de instalación, luego se despliega la ventana de términos de licencia de MySQL. Aceptamos los términos y damos clic en siguiente.

    http://dev.mysql.com/downloads/mysql/http://dev.mysql.com/downloads/mysql/http://dev.mysql.com/downloads/mysql/

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    5/53

     

    3. Mostrará la ventana de opciones de instalación, para el caso en particular se selecciona la opción Full(completa), y clic en siguiente.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    6/53

     4. En la ventana Chek Requeriments, el programa de instalación valida los requerimientos previos necesariospara realizar la instalación de MySQL. Para continuar clic en siguiente 

    5. En la ventana de instalación, se inicia la instalación de MySQL y una serie de complementos requeridospara su correcta ejecución, una vez finalizada clic en siguiente.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    7/53

    6. En la ventana Type and Networking, se selecciona el tipo de configuración, se despliegan tres tipos: Developer Machine: Para desarrolladores. Server Machine: Recomendada cuando se instala MySQL en un servidor donde existen otras

    aplicaciones en modo Servidor. Dedicated MySQL Server Machine: Configura MySQL asumiendo que solo MySQL Server estará

    corriendo en este servidor, no deja lugar a que corran otras aplicaciones.

    Para el caso en particular seleccionamos la opción Server Machine.Las opciones de conectividad TC/IP se dejan por defecto, luego se hace clic en siguiente.

    7. En la ventana Cuentas y Roles se define el password del administrador principal del Servidor MySQL, osea el usuario root. Igualmente pueden agregarse otros usuarios. Se definió la contraseña y clic en siguiente.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    8/53

     8. En la ventana Windows Service, se configuran los servicios de MySQL en Windows, se dejan las opcionespor defecto y clic en siguiente.

    9. En la ventana aplicar configuración del servidor, se ejecutan las opciones listadas, clic en ejecutar , yuna vez terminado el proceso clic en finalizar.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    9/53

     10. En la ventana Conectar con el servidor se comprueba el estado de la conexión, y clic en siguiente.

    11. El programa de instalación despliega la ventana para aplicar la configuración del servidor, clic en ejecutar .Una vez finalizado el proceso clic en finalizar

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    10/53

     12. Se despliega nuevamente la ventana de configuración del producto, con la configuración ya realizada,para continuar clic en siguiente.

    13. Finalmente la instalación ha sido realizada exitosamente.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    11/53

     

    14. Luego se comprueba el ingreso a Mysql Workbench.

    Como se observa se ha ingresado satisfactoriamente.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    12/53

    Procedimiento de Extracción, Transformación, Limpieza Y Carga de Los Datos De Sql Server aMysql 

    1. Para realizar la migración de SQL Server a MYSQL es necesario realizar la configuración del conectorODBC 5.3 ANSI de MYSQL.

    Paso 1: ingresamos al panel de control – Herramientas administrativas.

    Ingresamos a administrador de orígenes ODBC y creamos la conexion

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    13/53

    En este paso configuraremos la conexión la el servidor y la BBDD que necesitemos. Crearemos una conexiónODBC por cada BBDD que queramos conectar. 

    Haceos un test a la conexión

    2. Se crea la base de datos de la secretaria de recreación en SQL Server, tal como se observa a continuación,igualmente se procede a crear una variable global para activar el conector odbc en modo ANSI.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    14/53

     

    3. Para realizar la migración se hará uso del componente Data tools Visual Studio cuya plantilla IntegrationServices, permitió crear el proyecto, el cual hemos llamado “ProyectoMigracionSena” tal como se observaa continuación.

    Paso 1. Abrimos Microsoft Visual Studio.

    Paso 2. Clic en el menú Archivo – Nuevo Proyecto.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    15/53

    Escogemos la opción Proyecto Analisis services.Nombre: ProyectoMigracionSenaDamos clic en Aceptar

    4. Se crea el Flujo de Control para la migración. Para el caso llamado Proyecto Sena.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    16/53

    5. Se crean todos los orígenes de datos (origen y destino) correspondientes a cada una de las tablas de lasecretaria de Recreación para efectuar la migración a MySQL.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    17/53

    ETLC 

     A continuación se describen los procesos ETLC realizados en cada origen de datos y destino.

    PROCESO ETLC TABLA EVENTO

    1. Se inicia la creación de las conexiones correspondientes a cada origen y destino de datos. En primerainstancia se crean las conexiones origen de datos Evento de SQL Server. A continuación la conexión de SQLServer. Para crearla hacer clic en New

    En la siguiente ventana, Nuevamente hacer clic en New

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    18/53

     2. Luego se crea y configura la conexión de MSQL Server del tipo .Net Provider\SqlClient Data Provider . Seselecciona el nombre del servidor y el nombre de la base de datos para el caso: SecRecreación. En elBotón Test Connection se prueba el estado de la conexión.

    La conexión ha sido creada, clic en OK.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    19/53

    Se realiza el proceso de EXTRACCI N de la tabla Evento al origen de datos Evento de SQL Server.

    4. En Preview se observan los campos de la tabla Evento y en Columns es posible visualizar las columnas.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    20/53

     5. Se procede a crear la conexión del destino de datos Evento en MYSQL.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    21/53

    En este punto se hace clic en New para crear la conexión del destino de datos enMYSQL

    Nuevamente Clic en New para crear la conexión.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    22/53

    7. Se crea la conexión del destino de datos en MYSQL de tipo .Net Provider\Odbc Data Provider, seselecciona el origen de datos previamente creado en el conector odbc para el caso “secrecreacioodbc”, seescribe el Nombre de usuario: root y la contraseña del mismo. Igualmente se comprueba el estado de laconexión en el boton Test Connection, la cual para el caso ha sido satisfactoria.

    La conexión MySQL ha sido creada

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    23/53

     7. En este punto se vincula el origen de datos Evento de SQL Server hasta el destino de datos Evento deMySQL, para realizar la carga de los datos en este último.

    8. Se realiza la CARGA de la tabla Evento en el destino de datos, para su posterior migración.

    Al crear la tabla Evento, no se genera incompatibilidad de tipos de datos, por tanto no se

    realiza proceso de TRANSFORMACIÓN de los mismos. Tampoco es necesaria una LIMPIEZA dedatos. 

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    24/53

    9. En Preview se pueden visualizar los campos a cargados.

    10. En la opción Mappings se pueden visualizar los datos de origen y destino, siendo totalmente compatibles.

    11. En este punto ya se ha realizado el proceso de CARGA de los datos de la tabla Evento de SQL Server aMySQL. Aún deberá ejecutarse para su migración.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    25/53

    PROCESO ETLC TABLA INSTITUCIÓN 

    1. Previamente se deberán realizar la secuencia de pasos de creación de las conexiones del origen de datos yde destino de datos, mencionados en el primer proceso ETLC de este manual.

    2. Una vez creadas y configuradas las conexiones, se realiza la EXTRACCIÓN de la tabla Institución al origende datos Institución de SQL Server.

    En Preview se observan los campos de la tabla Institución y en Columns es posible visualizarlas columnas.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    26/53

     

    3. En este punto se vincula el origen de datos Institución de SQL Server al destino dedatos Institución de MySQL, para realizar la carga de los datos en este último.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    27/53

    4. Se realiza la CARGA de la tabla Institución en el destino de datos, para su posterior migración.

    Al crear la tabla Institución, no se genera incompatibilidad de tipos de datos, por tanto no se realiza proceso de

    TRANSFORMACIÓN de los mismos. Tampoco es necesaria una LIMPIEZA de datos.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    28/53

    5. En la opción Mappings se pueden visualizar los datos de origen y destino, siendo totalmente compatibles.

    6. En este punto ya se ha realizado el proceso de CARGA de los datos de la tablaInstitucion de SQL Server a MySQL. Aún deberá ejecutarse para su migración.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    29/53

    PROCESO ETLC TABLA INSTITUCI N - EVENTO 1. Previamente se deberán realizar la secuencia de pasos de creación de las conexiones de l origen de datosy de destino de datos, mencionados en el primer proceso ETLC de este manual.

    2. Una vez creadas y establecidas las conexiones, se realiza la EXTRACCIÓN de la tabla Institución_Eventoal origen de datos Institución_Evento de SQL Server.

    En Preview se observan los campos de la tabla Evento y en Columns es posible visualizar las columnas.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    30/53

     

    3. En este punto se vincula el origen de datos Institución_Evento de SQL Server a Institución_Evento deMySQL, para realizar la carga de los datos en este último.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    31/53

    4. Se realiza la CARGA de la tabla Institución en el destino de datos MySQL, para su posterior migración.

     Al crear la tabla Institución_Evento, no se genera incompatibilidad de tipos de datos, por tanto no se realiza

    proceso de TRANSFORMACIÓN de los mismos ni de los datos. Tampoco es necesaria una LIMPIEZA de

    datos.

    En Preview se pueden visualizar los campos a cargar.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    32/53

    5. En la opción Mappings se pueden visualizar los datos de origen y destino, siendo totalmente compatibles.

    6. En este punto ya se ha realizado el proceso de CARGA de los datos de la tabla Institucion_Evento de SQLServer a MySQL. Aún deberá ejecutarse para su migración. 

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    33/53

    PROCESO ETLC TABLA PARTICIPANTE 

    1. Previamente se deberán realizar la secuencia de pasos de creación de las conexiones del origen de datosy de destino de datos, mencionados en el primer proceso ETLC de este manual.

    2. Una vez creadas y establecidas las conexiones, se realiza la EXTRACCIÓN de datos de la tabla

    Participante de SQL Server al origen de datos Participante de SQL Server.

    En Preview se observan los campos de la tabla Evento y en Columns es posible visualizar las columnas.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    34/53

     

    3. En este punto se vincula origen de datos Participante de SQL Server a Participante de MySQL, pararealizar la carga de los datos en este último.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    35/53

    4. Se realiza la CARGA de la tabla Participante en el destino de datos MySQL, para su posterior migración.

     Al crear la tabla Participante, se genera incompatibilidad de tipos de datos en el campo IMAGE del campoFotoPar, por tanto se realiza proceso de TRANSFORMACIÓN en el siguiente tipo de dato:• Tipo de dato Image se transforma al tipo de dato blob, compatible en MySQL.

    No es necesario realizar LIMPIEZA de datos en este destino de datos. 

    5. En la opción Mappings se pueden visualizar los datos de origen y destino, siendo totalmente compatibles.

    6. En este punto ya se ha realizado el proceso de CARGA de los datos de la tabla Participante de SQLServer a MySQL. Aún deberá ejecutarse para su migración. 

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    36/53

     

    PROCESO ETLC TABLA PARTICIPANTE_EVENTO 

    1. Previamente se deberán realizar la secuencia de pasos de creación de las conexiones del origen de datos yde destino de datos, mencionados en el primer proceso ETLC de este manual.

    2. Una vez creadas y establecidas las conexiones, se realiza la EXTRACCIÓN de datos de la tabla

    Participante_Evento de SQL Server al origen de datos Participante_Evento SQL Server.

    En Preview se observan los campos de la tabla Participante_Evento y en Columns es posiblevisualizar las columnas.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    37/53

    3. En este punto se vincula el origen de datos de Participante_Evento de SQL Server aParticipante_Evento de MySQL, para realizar la carga de los datos en este último.

    4. Se realiza la CARGA de la tabla Participante_Evento en el destino de datos MySQL, para suposterior migración.

     Al crear la tabla Participante_Evento, se genera incompatibilidad de tipos de datos, por el tipo dedatos Money del campo ValoIns, por tanto se realiza proceso de TRANSFORMACIÓN cambiandoeste tipo de dato a decimal.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    38/53

     No es necesario realizar LIMPIEZA en esta tabla. 5. En la opción mappings se pueden visualizar los datos de origen y destino, siendo totalmentecompatibles.

    6. En este punto ya se ha realizado el proceso de CARGA de los datos de la tablaParticipante_Evento de SQL Server a MySQL. Aún deberá ejecutarse para su migración

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    39/53

    PROCESO ETLC TABLA TIPO 

    1. Previamente se deberán realizar la secuencia de pasos de creación de las conexiones del origen de datos yde destino de datos, mencionados en el primer proceso ETLC de este manual.

    2. Una vez creadas y establecidas las conexiones, se realiza la EXTRACCIÓN de datos de la tabla Tipo deSQL Server al origen de datos Tipo de SQL Server.

    En Preview se observan los campos de la tabla Tipo y en Columns es posible visualizar lascolumnas.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    40/53

    3. En este punto se vincula el origen de datos Tipo de SQL Server a Tipo de MySQL, para realizar la carga delos datos en este último.

    4. Se realiza la CARGA de la tabla Tipo en el destino de datos MySQL, para su posterior migración.

    Al crear la tabla Tipo, no se genera incompatibilidad de tipos de datos, por tanto no se realiza proceso de

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    41/53

    TRANSFORMACIÓN de los mismos, ni de los datos. Tampoco se hace necesario realizar LIMPIEZA de tipos de datos.

    5. En la opción Mappings se pueden visualizar los datos de origen y destino, siendo totalmente compatibles.

    6. En este punto ya se ha realizado el proceso de CARGA de los datos de la tabla Tipo de SQL Server aMySQL. Aún deberá ejecutarse para su migración.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    42/53

    EJECUCIÓN DE MIGRACIÓN DE BASE DE DATOS DE LA SECRETARIA DE RECREACIÓN DE SQL SERVER A MYSQL 

    1. Una vez se tienen todos los orígenes y destinos de datos conectados, tal como se observa a continuación,se procede a realizar el proceso de migración total de los datos desde SQL Server y MySQL.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    43/53

     2. Finalmente se realiza la migración completa, haciendo clic en el botón Iniciar.

    Como se observa a continuación se ha realizado la correctamente la migración de datos desde la base de datos SQL

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    44/53

    Server a la MySQL. Una vez creadas las tablas en MySQL se crearon las llaves primarias y foráneas, tal como se observan

    en las siguientes imágenes.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    45/53

     

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    46/53

    PRUEBA Y VALIDACIÓN DE LA MIGRACIÓN EN LA BASE DE DATOS EN MYSQL

    Para efectos de auditar y posteriormente documentar el proceso de migración realizado, se procede a probary verificar la consistencia y veracidad de la base de datos de origen SQL Server migrada a la base de datosdestino MySQL.

    Dicha prueba y validación se realiza a través de la verificación de los campos y por medio de consultas a losregistros de cada tabla de la secretaria de recreación, así como de la revisión del diagrama Entidad Relaciónde la base de datos.

     A continuación el DIAGRAMA ENTIDAD RELACIÓN de la base de datos migrada y las validaciones de cadatabla:

    Como se observa se mantienen las relaciones entre cada una de las tablas de la base de datos de origen. 

    Validación de la tabla

    1. Evento en función de sus campos.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    47/53

     

    2. Validación de la tabla Evento en función de sus registros.Validación de la tabla.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    48/53

    3. Institución en función de sus campos.Validación de la tabla.

    4. Validación de la tabla Institución en función de sus registros.Validación de la tabla.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    49/53

     

    5. Institución_Evento en función de campos.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    50/53

    7. Participante en función de campos

    8. Validación de la tabla Participante en función de sus registros.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    51/53

     9. Participante_Evento en función de campos.

    10. Validación de la tabla Participante_Evento en función de sus registros.

    11. Validación de la tabla Tipo en función de campos

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    52/53

     

    12. Validación de la tabla Tipo en función de sus registros.

  • 8/19/2019 Aa5- Evi 3-Migracion de Base de Datos

    53/53