Array
(
)

Linkando Servidores

Rafaelunp
   - 08 nov 2004

Amigos,

Tenho dois servidores com SQL Server.
Preciso que um execute SPs no outro...
Sei que tenho que Link´a-los... mas nao estou consegindo...
tenho a sintaxe, mas acho que estou errando nos parametros:

#Código

EXEC sp_addlinkedserver 
   @srvproduct = ´NOMELINK´,
   @server = ´NOMEBANCO´, 
   @provider = ´MSDASQL´,
   @provstr = ´DRIVER={SQL Server};SERVER=NOMEBANCO;UID=sa;PWD=sa;´
GO


Compila, mas nao funciona...
Onde posso estar errando?

Marcus.magalhaes
   - 08 nov 2004

Boa tarde.

Vá pelo EM e configure na opção Security -> Linked servers, coloquei de preferencia como trusted connection.

Ou use :

EXEC sp_addlinkedserver
@server=´nome_no_local´,
@srvproduct=´´,
@provider=´SQLOLEDB´,
@datasrc=´server_name_desejado´
GO

Att,

Rafaelunp
   - 08 nov 2004


Citação:
Boa tarde.

Vá pelo EM e configure na opção Security -> Linked servers, coloquei de preferencia como trusted connection.

Ou use :

EXEC sp_addlinkedserver
@server=´nome_no_local´,
@srvproduct=´´,
@provider=´SQLOLEDB´,
@datasrc=´server_name_desejado´
GO

Att,


Oi Marcus,
Valeu pela dica. executei pelo Query e nao deu erro, inclusive indo pelo EM já consigo visualizar as tabelas, mas nao entedi muito bem algumas coisas.. se possivel gostaria q vc me esclarecesse:
Tenho o Server1 com o Banco1
e o Server2 com o Banco2
Quero executar um select * from tabela1 do banco1 atraves do server2. Como ficaria a sp_addlinkedserver???
e apos isso, como ficaria o select???
E uma procedure? como faria? tipo uma procedure q esta no banco1 sendo executada pelo server2??

Voce poderia me esclarecer essas questoes??

Marcus.magalhaes
   - 08 nov 2004

Boa tarde Rafael.

Ficaria da seguinte forma :

EXEC sp_addlinkedserver
@server=´Server2´,
@srvproduct=´´,
@provider=´SQLOLEDB´,
@datasrc=´Server2´
GO

Executando no Server1, assim o nome do linked server (@server) será ´Server2´ e o nome físico da instancia no Server2 é Server2 por default, a menos q vc queira ter mais de 1 instancia no mesmo servidor (@datasrc)

O select fica da seguinte forma :

Select * From server2.banco2.dbo.tabela

ou

Exec [@variavel =] server2.banco2.dbo.procedure [parametros]

Ex.: Exec server2.master.dbo.xp_cmd_shell ´dir c:\´

Espero ter ajudado.

Att,

Rafaelunp
   - 10 nov 2004

Obrigado, Marcus

Era isso mesmo! Ficou ok!