configurando mysql como servidor vinculado desde sql server

Upload: marc-arellano-siancas

Post on 14-Oct-2015

35 views

Category:

Documents


0 download

TRANSCRIPT

CONFIGURANDO MYSQL COMO SERVIDOR VINCULADO DESDE SQL SERVER2005Escenario:Necesidad de acceder una base de datos MySQL desde Microsoft SQL Server:En este caso MySQL 5.0.77 correiendo sobre un servidor CentOS y SQL Server 2005 corriendo sobre windows 2003.nota: Los sistemas operativos no tienen que ver, y en teora, el procedimiento descrito funcionara para cualquier versin de ambas bases de datos (o al menos ms recientes).Procedimiento:A continuacin los pasos:1. Descargar el conector odbc de mysql (link) e instalarlo en el servidor windows desde donde se realizar la conexin. En este caso, se ha descargado el archivo:mysql-connector-odbc-3.51.30-win32.msiCon el nuevo conector, construya un odbc que apunte al servidor MySQL:

Despusde ingresar los parmetros de conexin recuerde realizar la prueba de conexin desde el boton test

NOTAS: Tome en cuenta que los ODBC de sistema en windows 7 no son visibles directamente Recomiendo reiniciar el servidor para que el nuevo controlador sea reconocido completamente en todo el sistema.2. Ahora desde el Management Studio de SQL Server agregar el servidor vinculado:En eldialogo Nuevo servidor vinculado; tome en cuenta lo siguiente: Servidor vinculado: cualquier nombre Tipo: Otro origen de datos Proveedor: Microsoft OLE DB Provider for ODBC Drivers Nombre del producto: Una referencia Origen de datos:el nombre del DSN creado en el paso 1En la ficha seguridad,y en opciones de usuario, habilitar RPC y Salida RPC:

Al presionar elbotnaceptar, el nuevo servidor vinculado debe aparecer en la lista de servidores vinculados.Tambin, es necesario: en la carpeta Proveedores dentro de servidores vinculados, cambiar las propiedades de MSDASQL segn la siguiente imgen:________________________________________________________________________________________________________________Listo, se ha configurado el servidor MySQL como servidor vinculado en SQL Server.Ahora, para poder ejecutar consultas en MySQL desde SQL Server se debe usar la instruccin OPENQUERY: a continuacin algunos ejemplos:Del servidor vinculado CallCenter. seleccione todos los registros de la tabla calls ymustrelosen pantalla:1select * from OPENQUERY(CallCenter, 'select * from calls;')

Insertar un registro en la tabla calls: para la campaa 6 ingresa el telefono 997172391insert into OPENQUERY(CallCenter, 'select id_campaign, phone from calls;') values (6, '99717239')

Insertar varios registro en la tabla calls del servidor vinculado, desde una tabla en el servidor MSSQL:1insert into OPENQUERY(CallCenter, 'select id_campaign, phone from calls;') select id as id_campaign, phone from otraTabla

Borrar los registros correspondientes a la campaa 6 en el servidor vinculado:1delete OPENQUERY(CallCenter, 'select * from calls where id_campaign = 6;')

Tome en cuenta que las instrucciones delete son mas lentas; parece que lo hace lnea por lnea.Actualizar la campaa 6 a campaa 7:1update OPENQUERY(CallCenter, 'select id_campaing from calls where id_campaign = 6;') set id_campaing = 7

Otras consideraciones1. Desde el servidor mysql se debe tener configuurado el acceso desde el servidor sql server para el usuario con el que se realiza el DSN2. Despusde la instalacin del ODBC y de la creacin del servidor vinculado, es recomendable reinicar el servidor o al menos el servicio MSSQL.