2010-06-30 13 views
12

Me gustaría hacer una copia de lo que hay en mi servidor remoto en xxx.safesecureweb.com. ¿Cómo me conecto desde mi servidor SQL local?sintaxis sp_addlinkedserver

es la sintaxis algo como:

sp_addlinkedserver 
@server='PRODUCTION', 
@provider='xxx.safesecureweb.com', 
@Username='myUsername', 
@Password='myPassword' 

Lo que estoy pensando en hacer es escribir un montón de instrucciones de inserción como:

INSERT INTO Test.Table 
SELECT * FROM Production.Table 

Respuesta

26

no especifica el usuario remoto y la contraseña en el ligada definición del servidor Los servidores vinculados tienen un objeto separado que asigna el inicio de sesión de los usuarios conectados al servidor local (el 'locallogin') con inicios de sesión remotos. Ver Security for Linked Servers. Por ejemplo, los siguientes mapas todos los inicios de sesión locales en el servidor vinculado a la especificada UsUaRiO de conexión SQL:

exec sp_addlinkedserver 'xxx.safesecureweb.com'; 
exec sp_addlinkedsrvlogin 'xxx.safesecureweb.com' 
    , 'FALSE', NULL, 'myUserName', 'myPassword'; 

Sólo puede asignar con el usuario/contraseña de un mando a distancia SQL inicio de sesión. Los inicios de sesión remotos de Windows (autenticación de confianza) deben usar autenticación integrada y configurar el servidor para constrained delegation.

3

proveedor debe ser el proveedor de cliente que desea utilizar para conectar. @datasrc es el nombre de servidor para conectarse.

sp_addlinkedserver 
@server='PRODUCTION', 
@provider='SQLNCLI', -- sql native client. 
@Username='myUsername', 
@Password='myPassword', 
@dataSrc = 'xxx.safesecureweb.com' 

Entonces, cuando se consulta, creo que es necesario utilizar un nombre de cuatro partes fot la tabla:

INSERT INTO Test.Table 
SELECT * FROM Production.mydatabase.dbo.Table 

http://msdn.microsoft.com/en-us/library/ms190479.aspx

+0

Gracias Paul. Agregué los dos parámetros @Username y @Password porque sé que necesito proporcionarlos en alguna parte para algo. Pero no están en la lista de parámetros sp_addlinkedserver. –

+0

Ah sí - doh! Debería usar sp_addlinkedsrvlogin para agregar el inicio de sesión: http://msdn.microsoft.com/en-us/library/ms189811.aspx –