利用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',null

exec sp_dropserver 'JOY'
select * from sys.servers;

Exec sp_helpserver

Exec sp_dropserver 'QPAccountsDBLink'


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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM