Bienvenido

sp_addlinkedserver y sp_addlinkedsrvlogin

lunes, 23 de marzo de 2009

sp_addlinkedserver
Crea un servidor vinculado. Un servidor vinculado permite obtener acceso a consultas heterogéneas distribuidas en orígenes de datos OLE DB. Después de crear un servidor vinculado mediante sp_addlinkedserver, se pueden ejecutar consultas distribuidas en este servidor. Si el servidor vinculado se define como una instancia de SQL Server, se pueden ejecutar procedimientos almacenados remotos.(Fuente:Libros en pantalla de SQL SERVER).
En otras palabras, nos permite realizar consultas o ejecutar procedimientos almacenados(Instancia SQL SERVER) pertenecientes a un servidor distinto al nuestro.
Caso Practico 1
Suponiendo que, la instancia de nuestro servidor SQL SERVER: SvrDestino y nuestra base de datos bd_Destino tiene como usuario: sa y clave: sa123456.
Se desea: Obtener todos los registros de la tabla: TablaOrigen, que se encuentra en la base de datos: bd_Origen con usuario: sa y clave: sa123456, en el servidor SvrOrigen.

Paso 1: Correr el procedimiento almacenado
exec sp_addlinkedserver 'SvrOrigen'
Paso 2: Ejecutar la consulta
Select [SvrOrigen].[bd_Origen].dbo.[TablaOrigen]

Listo, obtenemos todos los registros de TablaOrigen, desde nuestro servidor SvrDestino utilizando sp_addlinkedserver.

Consideracion: Estos pasos son suficientes para devolver todos los registros de TablaOrigen, pero,¿Que sucece si el usuario y clave de las base de datos no coinciden?

sp_addlinkedsrvlogin
Crea o actualiza una asignación entre un inicio de sesión en la instancia local de SQL Server y una cuenta de seguridad en un servidor remoto.(Fuente:Libros en pantalla de SQL SERVER)
Caso Practico 2
Suponiendo que, la instancia de nuestro servidor SQL SERVER: SvrDestino y nuestra base de datos bd_Destino tiene como usuario: sa y clave: sa123456.
Se desea: Obtener todos los registros de la tabla: TablaOrigen, que se encuentra en la base de datos: bd_Origen con usuario: sa y clave: sa123, en el servidor SvrOrigen.

Paso 1: Correr el procedimiento almacenado
exec sp_addlinkedserver 'SvrOrigen'
Paso 2: Correo el procedimiento almacenado
exec sp_addlinkedsvrlogin 'SvrOrigen',False,NULL,'sa','sa123'
Paso 3: Ejecutar la consulta
Select [SvrOrigen].[bd_Origen].dbo.[TablaOrigen]

Listo, obtenemos todos los registros de TablaOrigen, desde nuestro servidor SvrDestino utilizando sp_addlinkedservery sp_addlinkedsrvlogin.

Para mayor informacion:
Libros en pantalla de SQL SERVER
sp_addlinkedserver:
http://technet.microsoft.com/es-es/library/ms190479.aspx
sp_addlinkedsrvlogin:
http://technet.microsoft.com/es-es/library/ms189811.aspx

0 comentarios: