Algo que estamos implementando últimamente bastante para un cliente en particular son los Linked Servers. Este cliente tiene muchos servidores pero uno de ellos destaca por encima del resto por ser el que más usos tiene. Debido a esto, este servidor necesita muchas veces tomar información de otros servidores distintos.
Para esto, les creamos Linked Servers que conectan con estos otros servidores auxiliares.
¿Qué es un Linked Server?
Un Linked Server en SQL Server es una configuración que te permite acceder a datos de una base de datos en otro servidor como si estuvieran en el mismo servidor SQL. Es decir, te permite ejecutar consultas sobre una base de datos que está en otra instancia.
¿Por qué usar Linked Servers?
- Si tu empresa tiene datos distribuidos en múltiples bases de datos y servidores, los Linked Servers permiten acceder a todos ellos desde una única instancia.
- Simplifica la administración al permitir que diferentes bases de datos se consulten y gestionen desde un solo punto.
- Facilita la automatización de procesos y reportes que necesiten datos de diferentes fuentes.
Cómo configurar un Linked Server
El proceso de creación de un Linked Server es un proceso muy intuitivo y que requiere de unos pocos click. Está hecho para tontos basicamente.
Acceder a la configuración de Linked Servers
Partimos de la base de que ya conoceis SQL Server Management Studio (SSMS) y lo teneis instalado.
- Nos conectamos a la instancia donde vamos a crear el Linked Server
- Navegamos a la carpeta Linked Servers dentro de Server Objects.
Crear un nuevo Linked Server
- Hacemos clic derecho en la carpeta Linked Server y seleccionamos New Linked Server.
- En la ventana que se abre, rellenamos los siguientes campos:
- Linked Server: Especificamos el nombre del servidor al que nos conectaremos.
- Provider: Seleccionamos el proveedor adecuado para la conexión.
- Product: Especificamos el tipo de producto (normalmente SQL Server).
- Data Source: Indicamos el nombre del servidor al que nos queremos conectar.
- Provider Catalog: Especificamos el nombre de la base de datos (si es necesario).
Configurar la seguridad
- En la pestaña de Security, configuramos cómo se autenticará el acceso al servidor vinculado. Esto puede ser mediante el uso de la cuenta actual o mediante la especificación de credenciales de inicio de sesión existentes en el servidor de destino.
Probar la conexión
- Tras configurar todos los detalles, hacemos clic en Aceptar para crear el Linked Server.
- Se hará un test de conexión y sólo nos mostrará un mensaje si falla.
Si no falla, el Linked Server habrá sido creado y lo podremos ver en la carpeta.
Usar Linked Servers en consultas SQL
Una vez que tenemos nuestro Linked Server configurado, usarlo en consultas es bastante sencillo. Aquí tienes algunos ejemplos básicos:
Seleccionar datos desde un Linked Server
sqlCopiar código<code>SELECT * FROM [NombreDelLinkedServer].[NombreDeLaBaseDeDatos].[dbo].[NombreDeLaTabla] </code>
Unir datos de un Linked Server con datos locales
sqlCopiar código<code>SELECT localTable.*, remoteTable.* FROM localTable JOIN [NombreDelLinkedServer].[NombreDeLaBaseDeDatos].[dbo].[remoteTable] ON localTable.id = remoteTable.id </code>
Ejecutar un procedimiento almacenado en un Linked Server
sqlCopiar código<code>EXEC [NombreDelLinkedServer].[NombreDeLaBaseDeDatos].[dbo].[NombreDelProcedimiento] </code>
Espero que este post te haya sido útil y te animes a probar los Linked Servers en tus proyectos.
¿Todavía tienes dudas?
Si este post no ha solucionado tu problema o todavía tienes dudas sobre este o cualquier otro asunto relacionado con SQL Server, puedes enviarme un mensaje o solicitar una consultoría gratuita haciendo clic aquí.