Estoy intentando crear un servidor vinculado en la instancia de SQL Server 2014 servername\instancename
usando la siguiente llamada:
EXEC master.dbo.sp_addlinkedserver
@server = N'servername\instancename',
@srvproduct=N'SQL Server'
Recibo el error:
Msg 15028, Level 16, State 1, Procedure sp_addlinkedserver, Line 82
The server 'servername\instancename' already exists.
Esto funciona bien en SQL Server 2005 y, según MSDN ,
El servidor vinculado no tiene que ser otra instancia de SQL Server,
Por lo tanto, no estoy seguro de qué ha cambiado en las versiones recientes que no permiten esto. Usar la interfaz de usuario genera un mensaje similar:
No puede crear un servidor SQL local como un servidor vinculado.
Entiendo que es algo extraño solicitar, pero es para admitir algún código heredado que funcionó en 2005 (y solía estar en instancias separadas). La documentación indica que debería funcionar, pero no es así. ¿Hay alguna manera de hacer que esto funcione en 2014, o tendré que modificar el código subyacente?
fuente
Respuestas:
Resulta que pude hacerlo funcionar con diferentes parámetros.
fuente
En lugar de tratar con referencias de servidores vinculados dentro de su código, es posible que desee considerar una inversión de código de una sola vez que implique el uso de un sinónimo en cualquier ubicación donde actualmente tenga un servidor vinculado.
Entonces en lugar de:
Tienes un sinónimo:
Entonces su código es simplemente:
Luego, si tiene objetos movidos a diferentes servidores, simplemente suelte y vuelva a crear los sinónimos y no tenga que tocar el código:
fuente
Ejecute este comando: podrá utilizar el servidor local como servidor vinculado sin necesidad de cambiar el código
fuente