網(wǎng)狐棋牌出現(xiàn)exec sp_addlinkedserver @server=@linkservername 解決的方式方法
[重要通告]如您遇疑難雜癥,本站支持知識付費(fèi)業(yè)務(wù),掃右邊二維碼加博主微信,可節(jié)省您寶貴時(shí)間哦!
一開始提示,在服務(wù)器中找不到在 sys.servers 中找不到服務(wù)器 'QPAccountsDBLink',先用select * from sys.servers ?,發(fā)現(xiàn)只能查到一個服務(wù)器名稱,后來自己電腦里保存了一些鏈接腳本,只需改幾個地方
-- 變量定義
DECLARE @DBName VARCHAR(32)
DECLARE @DBUser VARCHAR(32)
DECLARE @DBPassword VARCHAR(32)
DECLARE @DBSourceAddr VARCHAR(32)
DECLARE @LinkServerName VARCHAR(32)
-- 設(shè)置變量
SET @LinkServerName='QPTreasureDBLink'
SET @DBSourceAddr='(local)'
SET @DBName='QPTreasureDB'
-- 刪除連接服務(wù)器
IF EXISTS(SELECT SrvName FROM MASTER.DBO.SYSSERVERS WHERE SrvName=@LinkServerName)
BEGIN
EXEC SP_DROPSERVER @LinkServerName,'DropLogins'
END
-- 建立鏈接服務(wù)器
EXEC SP_ADDLINKEDSERVER?
@Server=@LinkServerName,?
@SrvProduct=@LinkServerName,
@Provider='SQLOLEDB',
@DataSrc=@DBSourceAddr,
@Location='',
@ProvStr='',
@Catalog=null
-- 用戶映射
EXEC SP_ADDLINKEDSRVLOGIN @RmtSrvName=@LinkServerName,@Useself='true',@LocalLogin=NULL,@RmtUser=NULL,@RmtPassword=NULL
-- 設(shè)置鏈接服務(wù)器
EXEC SP_SERVEROPTION @Server=@LinkServerName,@OptName='RPC',@OptValue='true'
EXEC SP_SERVEROPTION @Server=@LinkServerName,@OptName='RPC OUT',@OptValue='true'
EXEC SP_SERVEROPTION @Server=@LinkServerName,@OptName='Data Access',@OptValue='true'
EXEC SP_SERVEROPTION @Server=@LinkServerName,@OptName='Collation CompaTible',@OptValue='true'
EXEC SP_SERVEROPTION @Server=@LinkServerName,@OptName='Use Remote Collation',@OptValue='true'
-- 鏈接服務(wù)器狀態(tài)
EXEC SP_HELPSERVER @LinkServerName
只需要在設(shè)置變量那里改改,其他不用動,提示缺少找不到什么服務(wù)器就弄什么服務(wù)器
-- 設(shè)置變量
SET @LinkServerName='QPTreasureDBLink'
SET @DBSourceAddr='(local)'
SET @DBName='QPTreasureDB'
只需把@LinkServerName設(shè)置成數(shù)據(jù)庫link名字
@DBName設(shè)置成數(shù)據(jù)庫名字
下面是網(wǎng)上通用解決方法
出現(xiàn)錯誤:
[Microsoft][ODBC SQL Server Driver][SQL Server]在 sys.servers 中找不到服務(wù)器 '***'。請驗(yàn)證指定的服務(wù)器名稱是否正確。如果需要,請執(zhí)行存儲過程 sp_addlinkedserver 以將服務(wù)器添加到 sys.servers。
解決方法:
打開SQL Server Management Studio,新建查詢:
select * from sys.servers?
GO
//這里可得到原來的計(jì)算機(jī)名稱。然后將其記錄下來(復(fù)制即可)
新建查詢:
sp_dropserver [你的SQL服務(wù)器名稱]
GO
//這里是將原來的名稱刪除。
新建查詢:
sp_addserver [新的SQL服務(wù)器名稱]
GO
//這里是新建服務(wù)器名稱
新建查詢:
sp_serveroption '新的SQL服務(wù)器名稱','data access', 'true'
GO
其他解決方式如下:
這個問題是因?yàn)閿?shù)據(jù)庫是附加的,腳本代碼里面的創(chuàng)建鏈接服務(wù)器腳本沒有執(zhí)行,執(zhí)行一下就好了。
數(shù)據(jù)庫附加 SQL執(zhí)行
sp_addlinkedserver 'RYAccountsDBLink', 'RYAccountsDBLink', 'SQLNCLI','(local)',null,null,'RYAccountsDB'
sp_addlinkedserver 'RYTreasureDBLink', 'RYTreasureDBLink', 'SQLNCLI','(local)',null,null,'RYTreasureDB'
sp_addlinkedserver 'RYPlatformDBLink', 'RYPlatformDBLink', 'SQLNCLI','(local)',null,null,'RYPlatformDB'
sp_addlinkedserver 'RYRecordDBLink', 'RYRecordDBLink', 'SQLNCLI','(local)',null,null,'RYRecordDB'
EXEC master.dbo.sp_serveroption @server=N'RYAccountsDBLink', @optname=N'rpc out', @optvalue=N'true'
問題未解決?付費(fèi)解決問題加Q或微信 2589053300 (即Q號又微信號)右上方掃一掃可加博主微信
所寫所說,是心之所感,思之所悟,行之所得;文當(dāng)無敷衍,落筆求簡潔。 以所舍,求所獲;有所依,方所成!