martes, 8 de marzo de 2011

Creando un linked server a DB2.

Creando un linked server a DB2.

Aplica a: Microsoft SQL Server 2008 R2 RTM - Express with Management Tools, IBM DB2 9.7


Creamos el siguiente linked server con la finalidad de realizar pruebas. Instalamos Microsoft SQL Server 2008 R2 y DB2 9.7 en una misma máquina virtual.

Por favor, proceda con los siguientes pasos para crear un linked server desde SQL Server 2008 R2 hacia una base de datos IBM DB2 vía ODBC:


1. Vamos a crear un System DSN haciendo uso del ODBC Data Source Administrator.

2. Hagamos un clic en el tab System DSN y hagamos un clic el botón denominado “Add”.




3. En la ventana de "Create New Data Source", elija "IBM DB2 ODBC DRIVER" del listado de drivers disponibles y haga un clic en “Finish”.

8. Seleccione el radio button “Other data source” para “Server type” y luego haga uso del combo box del campo "Provider" para seleccionar “IBM OLE DB Provider for DB2".

9. Escriba “OBC Provider for DB2" en el campo "Product name".

10. Escriba en el campo “Data Source”, el nombre del DSN que creo en el paso 4.

11. Escriba la siguiente cadena de conexión en el campo "Provider string":

Initial Catalog=SAMPLE;Data Source=SAMPLE;HostCCSID=1252;Network Address=172.16.31.1;Network Port=50000;Package Collection=admin;Default Schema=admin;



4. En la ventana de "ODBC IBM DB2 Driver - Add", introduzca por favor algún nombre para el DSN en el campo de nombre "Data Source Name". Luego haga uso del combo box para seleccionar la base de datos a que se conectará en la instancia DB2 y provea alguna descripción en el campo denominado "Description".


Una vez creado el DSN, podemos crear el linked server siguiendo los pasos descritos a continuación.


5. Abra SQL Server Management Studio y conéctese a SQL Server. Expanda "Server Objects" y luego haga clic en "Linked Servers".

6. Efectúe un clic derecho en "Linked Servers" y seleccione "New Linked Server".




7. En el campo denominado "Linked Server", asigne un nombre al linked server.


Para entender mejor esta cadena, describamos algunas de sus partes.

Initial Catalog = el nombre de la base de datos en la instancia DB2.

Data Source = Nombre del System DSN creado.

Network Address = dirección IP de la instancia DB2.

Network Port = Puerto de conexión a DB2. 50000 es el puerto por omisión.

HostCCSID = Host Coded Character Set Identifier consiste en cómo la data  de tipo caracter es enviada al host y este debe ser igual al conjunto o “set” de caracteres que usa la base de datos DB2. En este ejemplo usamos el “set” de caracteres 1252 (ANSI - Latin). La instancia DB2 reside en el mismo servidor donde reside la instancia SQL Server 2008 R2: código de página de PC (PC code page) HOSTCCSID=PC.

PC code page = “set” de caracteres usado en un computador Windows para realizar conversiones de caracteres.

12. Haga clic en "Security" y suministre credenciales para conectarse a la instancia DB2.

13. Haga clic en "Server Options" y habilite la opción RPC Out.



14. Haga clic en OK

15. Ejecutemos algunas instrucciones SELECT para probar el linked server que acabamos de crear.


2 comentarios:

  1. hola buen dia como se enlazan los datos de Active Directory a SQL Server 2008
    se hace lo mismo?

    ResponderEliminar
  2. Excelente tutorial me sirvió mucho aún después de casi 6 años que se publicó este post.

    ResponderEliminar