1. 程式人生 > >利用sp_addlinkedserver實現遠端資料庫連結

利用sp_addlinkedserver實現遠端資料庫連結

--檢視當前連結情況:

select * from sys.servers;

--使用 sp_helpserver 來顯示可用的伺服器

Exec sp_helpserver

--刪除已經存在的某個連結

Exec sp_droplinkedsrvlogin 伺服器別名,Null

Exec sp_dropserver 伺服器別名

--使用sp_addlinkedserver來增加連結

EXEC sp_addlinkedserver
@server='192.168.2.66',--被訪問的伺服器別名(習慣上直接使用目標伺服器IP,或取個別名如:JOY)
@srvproduct='',
@provider='SQLOLEDB',
@datasrc='192.168.2.66' --要訪問的伺服器

--使用sp_addlinkedsrvlogin 來增加使用者登入連結

EXEC sp_addlinkedsrvlogin
'192.168.2.66', --被訪問的伺服器別名(如果上面sp_addlinkedserver中使用別名JOY,則這裡也是JOY)
'false',
NULL,
'sa', --帳號
'test123' --密碼

使用舉例(訪問目標伺服器上的資料庫Music,檢視其中表test的內容):
如果建立連結時的別名是目標伺服器IP,即192.168.2.66
則:

select * from [192.168.2.66].[Music].dbo.test

如果建立連結時的別名是JOY, 
則:

select * from [JOY].[Music].dbo.test

可能會遇到的問題:
exec sp_dropserver 'JOY'執行失敗,
報錯資訊:仍有對伺服器 'JOY' 的遠端登入或連結登入。
解決方法:

exec sp_droplinkedsrvlogin 'JOY',nullexec sp_dropserver 'JOY'