2017-06-20 75 views
0

我想從不同服務器的不同表中提取數據。我參加了一個查詢在V5\SQL2014服務器並運行這些下面連接到V5_27\SQL2005服務器SELECT兩個不同服務器之間的查詢

EXEC sp_addlinkedserver 
@server= 'V5_27\SQL2005', 
@srvproduct='V5_27\SQL2005', 
@provider='SQLNCLI', 
@datasrc='tcp:0.0.0.0' 

EXEC sp_addlinkedsrvlogin 
@useself='FALSE', 
@rmtsrvname='V5_27\SQL2005', 
@rmtuser='sa', 
@rmtpassword='123' 

SELECT * FROM Stk006,[V5_27\SQL2005]..[TESTACC].Stk006 

它顯示我以下錯誤。

鏈接服務器「V5_27 \ SQL2005」的OLE DB提供程序「SQLNCLI11」返回消息「登錄超時已過期」。

鏈接服務器「V5_27 \ SQL2005」的OLE DB提供程序「SQLNCLI11」返回消息「建立與SQL Server的連接時發生了網絡相關或實例特定的錯誤,請檢查服務器是否存在。如果SQL Server配置爲允許遠程連接,則實例名稱是正確的。有關更多信息,請參閱SQL Server聯機叢書。「

Msg 10049,Level 16,State 1,Line 22 TCP提供程序:請求的地址在其上下文中無效。

  1. User and Password都沒有錯。
  2. Allow remote在兩臺服務器中均啓用。
  3. TCP/IP and Named Pipes在兩臺服務器中均啓用。

請幫幫我,謝謝!

+0

我相信,它是內存問題或網絡流量錯誤。相反,我寧願真正創建一個同義詞並從服務器執行。可能工作 –

回答

0

謝謝大家,我爲我的問題找到了解決方案。

您可以檢查解決方案鏈接here或執行以下步驟。

  1. 嘗試創建一個linkServer,對象資源管理器 - >服務器對象 - >鏈接服務器(右鍵點擊並創造新)

enter image description here

  • 配置設置
  • 輸入您的服務器名稱 enter image description here

    登錄與sapassword

    enter image description here

  • 然後它測試連接。
  • enter image description here

  • 享受查詢。
  • select lc.t2 as 'Local Stock Code', ext.t2 as 'External Stock Code' from Stk001 lc, [V5_27\SQL2005].[TESTACC].[dbo].[STK001] ext