簡體   English   中英

無法從SQL Server 2008 R2管理Studio的一台服務器中的存儲過程訪問位於另一台服務器中的數據表

[英]cannot access a data table located in another server from a stored procedure in one server of SQL server 2008 R2 management studio

我需要從SQL Server 2008 R2管理工作室的一個服務器(服務器1)中的存儲過程訪問位於另一服務器(目標服務器)中的數據表。

我已經添加了目標服務器:

EXEC sp_addserver 'target_server' , 'DATA ACCESS', TRUE
EXEC sp_serveroption 'target_server' , 'DATA ACCESS', TRUE

但是,當我運行存儲過程訪問目標服務器時,出現此錯誤:

Login failed for user 'my_login_user_name'.

目標服務器的密碼與我的server1的登錄密碼不同。 但是,我已經成功登錄並使用正確的密碼將其添加到Management Studio。

為什么無法從存儲過程訪問目標服務器?

sp_addserver有點舊(在2008年,我相信它只是與sql server 2000向后兼容而已)。 除非我沒事...使用SP_addlinkedserver的組合(類似用法為sp_addserver)來建立連接。 (編輯以添加...您原來的sp_addserver應該已經可以正常工作,除非您確實想要重做此步驟,否則沒有意義)

然后使用SP_addlinkedsrvlogin定義用戶訪問權限:

sp_addlinkedsrvlogin [ @rmtsrvname = ] 'rmtsrvname' 
 [ , [ @useself = ] 'TRUE' | 'FALSE' | NULL ] 
 [ , [ @locallogin = ] 'locallogin' ] 
 [ , [ @rmtuser = ] 'rmtuser' ] 
 [ , [ @rmtpassword = ] 'rmtpassword' ] 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM