You are on page 1of 6

c m

Les planteo el siguiente escenario. Tengo un servidor principal con SQL Server 2005 como
manejador de base de datos. Adicionalmente, tengo instalado en otras PC's "terminales" un
sistema que corre, de manera local, conectado a una base de datos MySQL instalada en dicho
terminal.   


 Porque quiero que este siga funcionando independientemente si
"se va" la red, existe un tráfico excesivo o decenas de problemas extras que pueden ocurrir en
una aplicación "en línea". El punto central del problema es el siguiente ¿Como hago para pasar
toda esa información capturada en los terminales en la base de datos MySQL y trasladarla a mi
servidor central con el SQL Server 2005?. A primera idea una solución. Programar una aplicación
que acceda a la base Mysql, lea los datos y los inserte mediante consultas SQL en el servidor
central con SQL 2005. Pero, ¿Debe existir una solución mas sencilla, rápida y elegante? Ese es el
tema del que trataremos esta vez. Este se llama servidores vinculados en SQL Server 2005.m


 

  mm
m
Quiero pasar datos de Mysql a SQL 2005.

 

 
  
m

El mismo nombre es bastante descriptivo. Añado una base de datos externa al SQL 2005 y la hago
accesible, entiéndase puedo aplicar sobre ella consultas SQL como insert's, update's o delete's.m

m


 m

 


  





 




 
 m
m
ÿbicación : En el servidor central donde esta la base SQL Server 2005m
m
Debes bajar el Conector ODBC para MySQL de la siguiente web :m
m
http://dev.mysql.com/downloads/connector/odbc/m
m
Descarga el que se ajuste a tu Windows, ya se da 32 o 64 bits. Solo hay que instalarlo, lo cuál no
representa mayor problema ya que es la típica instalación "siguiente-siguiente".

 


 



   

 
 

 
 



 


 m
m
ÿbicación : En el servidor central donde esta la base SQL Server 2005m

Entra al "Panel de Control" y busca "Herramientas Administrativas". Entra en este y aparecerá


"Orígenes de datos ODBC".m

Se abrirá la siguiente ventana. Busca el botón "Agregar".


Clic sobre Mysql ODBC 3.51 driver (que es lo que instalaste en el paso 1). Luego sobre finalizar.

am

m
Se abrirá el conector ODBC del MySQL. En este debes definir los parámetros de conexión a tu base
de datos MySQL. Simplemente agrega el nombre de tu servidor, tu user y password. No olvides
colocar el nombre de la conexión (Data Source Name). Lo vamos a usar en el Paso 3. Sugiero
"MySQL_LINK".m
m
m
m

 
!

"  

 
 



##$m
m
ÿbicación : En el servidor central donde esta la base SQL Server 2005m
m
Entramos al administrador coorporativo del SQL Server 2005 y buscamos la opción "Objetos del
servidor". Dentro existe una subcarpeta llamada "Servidores vinculados".m
m

Hacemos clic derecho sobre Servidores vinculados y


buscamos la opción "Nuevo servidor vinculado".m
m

Se abrirá la ventana "Nuevo servidor


vinculado" donde debes colocar los parametros para conectarse con la base MySQL.m
m
Marcas la opción "Otro origen de datos" . Deberás colocar los siguientes parámetros.

 
  
 LINKED_MYSQL (coloca el nombre que desees)
m
 
 Microsoft OLE DB Provider for ODBC Drivers.m
m
*

 
 MySQLm
m



 MySQL_LINK (Ojo: Este es el nombre del ODBC que creaste en el paso 2,
colocale el que tu hayas colocado.)m
m
 

 
 ODBC:DSN=MySQL_LINK::Table=aaa (el valor aaa es una tabla de la base
MySQL, coloca cualquiera de las tablas de tu base. DSN es el nombre del ODBC que creaste en el
paso 2)m
m
%
 pyp1 (nombre de la base de datos a la cuál quieras conectarte)m
m

m
Dentro de la misma ventana, clic en la ficha "Seguridad" para que establecer con que user y
password nos vamos a conectar. Clic en "Se establecerán usando este contexto de seguridad" y
colocamos el user y password. Luego clic en el botón "Aceptar". Eso es todo, ya tenemos
vinculado nuestro servidor MySQL con SQL 2005.m
m
m

 
&

 
 



 
  

ÿbicación : En el servidor central donde esta la base SQL Server 2005m

Vayamos a probar si podemos hacer consultas en MySQL.

Ejecutamos
'
() (c'
** c(+*
(Devolvemos información acerca de las tablas
de el servidor que hemos vinculado.LINKED_MYSQL es el nombre del servidor vinculado que
hemos creado). Se deben mostrar las tablas del servidor vinculado.

Veamos algunos ejemplos de


sentencias SQL con openquery.


 
 




m

,

  
-* c(+* 
,

*.m
m

 





 m
m

  
-* c(+* 
,

*.. ¡Borramos todos los datos de la tabla
'aaa' m
m

 
 



 m
m
 

  -* c(+* 
,
/0
*.

-/ 
/ .

cc)
/ 
/ 

/0
)m
m
+

 1
 m
m
2 
  -* c(+*
,

*.
c)
 (
3
4
m
56c0c
 (
3
4$m
m
Para terminar en este post existe más ejemplos de sentencias SQL con OpenQuery y servidor
vinculados. Es un gran post con bastantes ejemplos, me ayudo en mi trabajo así que se los
recomiendo :m
m
http://www.forosdelweb.com/f21/como-hacer-insert-liskserver-por-openquery-238208/m
m
Espero que este tema ayude a muchos que como yo están en busca de una forma segura y sencilla
de conectar Mysql con SQL Server.m
m

You might also like