2010-06-30 9 views
12

Vorrei fare una copia di cosa c'è sul mio server remoto su xxx.safesecureweb.com. Come ci si connette al mio SQL Server locale?sintassi sp_addlinkedserver

è la sintassi simile:

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

Quello che sto pensando di fare sta scrivendo una serie di istruzioni INSERT come:

INSERT INTO Test.Table 
SELECT * FROM Production.Table 

risposta

26

non si specifica l'utente remoto e la password nel collegato definizione del server. I server collegati dispongono di un oggetto separato che associa il login degli utenti connessi al server locale (il 'locallogin') con accessi remoti. Vedi Security for Linked Servers. Ad esempio, il seguente mappe tutti gli accessi locali sul server collegato al specificato MyUserName accesso SQL:

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

È possibile mappare solo con l'utente/password di un telecomando SQL login. Gli accessi remoti di Windows (autenticazione trusted) devono utilizzare l'autenticazione integrata e configurare il server per constrained delegation.

3

Provider dovrebbe essere il fornitore di cliente che si desidera utilizzare per connettere. @datasrc è il nomeserver a cui connettersi.

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

Poi, quando l'interrogazione, credo è necessario utilizzare un nome di quattro parti fot tabella:

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

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

+0

Grazie Paul. Ho aggiunto i due parametri @Username e @Password perché so che ho bisogno di fornirli da qualche parte per qualcosa. Ma non sono nella lista dei parametri sp_addlinkedserver. –

+0

Ah sì - doh! Dovresti utilizzare sp_addlinkedsrvlogin per aggiungere l'accesso: http://msdn.microsoft.com/en-us/library/ms189811.aspx –