SQLServer2008新實(shí)例遠(yuǎn)程數(shù)據(jù)庫鏈接問題(sp_addlinkedserver)
先說說問題起因:
測試同學(xué)在自己電腦上測試不同的后臺,但數(shù)據(jù)庫使用的是相同的名稱。
于是創(chuàng)建了新的SQL Server實(shí)例,而新實(shí)例需要指定不同端口才能啟動,改端口后執(zhí)行sp_addlinkedserver語句后,連接測試不成功。
執(zhí)行的SQL語句如下:
EXEC master.dbo.sp_addlinkedserver @server = N'UserDBLink', @srvproduct=N'UserDBLink', @provider=N'SQLNCLI', @datasrc=N'(LOCAL)', @catalog=N'UsersDB' /* For security reasons the linked server remote logins password is changed with ######## */ EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'UserDBLink',@useself=N'True',@locallogin=NULL,@rmtuser=NULL,@rmtpassword=NULL
先說下問題的解決方案,需要在@datasrc字串中加入端口號,如下:
@datasrc=N'(LOCAL)'修改為@datasrc=N'(LOCAL),端口號'
很簡單吧!但,但,但確查了好久,最后還是想到程序中連接字符串用法,才解決了該問題。
程序中鏈接串是這樣的
Provider=SQLOLEDB.1;Password=11;Persist Security Info=True;User ID=sa;Initial Catalog=db;Data Source=127.0.0.1,1433;
在查找問題過程中,查了MSDN文檔,居然沒有寫新端口的寫法,難怪該妹妹折騰了好久!,大家?guī)臀铱纯?,難道我錯(cuò)怪MSDN了嘛?。。?/p>
這是鏈接:https://msdn.microsoft.com/zh-cn/library/ms190479.aspx
這是我復(fù)制的MSDN描述
sp_addlinkedserver [ @server= ] 'server' [ , [ @srvproduct= ] 'product_name' ] [ , [ @provider= ] 'provider_name' ] [ , [ @datasrc= ] 'data_source' ] [ , [ @location= ] 'location' ] [ , [ @provstr= ] 'provider_string' ] [ , [ @catalog= ] 'catalog' ]
參數(shù):
[ @server= ] 'server'
要?jiǎng)?chuàng)建的鏈接服務(wù)器的名稱。 server 的數(shù)據(jù)類型為 sysname,無默認(rèn)值。
[ @srvproduct= ] 'product_name'
要添加為鏈接服務(wù)器的 OLE DB 數(shù)據(jù)源的產(chǎn)品名稱。 庫是nvarchar (128),默認(rèn)值為 NULL。 如果SQL Server, provider_name, data_source,位置, provider_string,和目錄無需指定。
[ @provider= ] 'provider_name'
與此數(shù)據(jù)源對應(yīng)的 OLE DB 訪問接口的唯一編程標(biāo)識符 (PROGID)。 provider_name必須是唯一的當(dāng)前計(jì)算機(jī)上安裝指定的 OLE DB 提供程序。 provider_name是nvarchar (128),默認(rèn)值為 NULL; 但是,如果provider_name是省略,則使用 SQLNCLI。 (使用 SQLNCLI 并且 SQL Server 將重定向到 SQL Server Native Client OLE DB 訪問接口的最新版本。)OLE DB 訪問接口應(yīng)以指定的 PROGID 在注冊表中注冊。
[ @datasrc= ] 'data_source'
由 OLE DB 訪問接口解釋的數(shù)據(jù)源的名稱。 data_source是nvarchar (4000)。 data_source作為要初始化的 OLE DB 訪問接口的 DBPROP_INIT_DATASOURCE 屬性傳遞。
[ @location= ] 'location'
由 OLE DB 訪問接口解釋的數(shù)據(jù)庫的位置。 位置是nvarchar (4000),默認(rèn)值為 NULL。 位置作為要初始化的 OLE DB 訪問接口的 DBPROP_INIT_LOCATION 屬性傳遞。
[ @provstr= ] 'provider_string'
OLE DB 訪問接口特定的連接字符串,它可標(biāo)識唯一的數(shù)據(jù)源。 provider_string是nvarchar (4000),默認(rèn)值為 NULL。 provstr傳遞給 IDataInitialize,或者設(shè)置為 DBPROP_INIT_PROVIDERSTRING 屬性來初始化 OLE DB 訪問接口。
針對創(chuàng)建鏈接的服務(wù)器時(shí)SQL ServerNative Client OLE DB 提供程序,可以使用服務(wù)器 SERVER 關(guān)鍵字指定實(shí)例 =servername\instancename指定的特定實(shí)例SQL Server。 servername是在其上的計(jì)算機(jī)的名稱SQL Server正在運(yùn)行,和instancename是的特定實(shí)例的名稱SQL Server用戶將連接到。
[ @catalog= ] 'catalog'
與 OLE DB 訪問接口建立連接時(shí)所使用的目錄。 目錄是sysname,默認(rèn)值為 NULL。 目錄作為要初始化的 OLE DB 訪問接口的 DBPROP_INIT_CATALOG 屬性傳遞。 在針對 SQL Server 實(shí)例定義鏈接服務(wù)器時(shí),目錄指向鏈接服務(wù)器映射到的默認(rèn)數(shù)據(jù)庫。
以上所述是小編給大家介紹的SQLServer2008新實(shí)例遠(yuǎn)程數(shù)據(jù)庫鏈接問題(sp_addlinkedserver),希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時(shí)回復(fù)大家的!
相關(guān)文章
SQL Server 2008 數(shù)據(jù)庫鏡像部署實(shí)例之三 配置見證服務(wù)器
前面已經(jīng)完成了鏡像數(shù)據(jù)庫的配置,并進(jìn)行那個(gè)了故障轉(zhuǎn)移測試。接下來將部署見證服務(wù)器,實(shí)現(xiàn)自動故障轉(zhuǎn)移2013-11-11SQL Server 2008 R2占用cpu、內(nèi)存越來越大的兩種解決方法
這篇文章主要介紹了SQL Server 2008 R2占用內(nèi)存越來越大的兩種解決方法,需要的朋友可以參考下2017-10-10使用SQL Server 2008遠(yuǎn)程鏈接時(shí)SQL數(shù)據(jù)庫不成功的解決方法
這篇文章主要介紹了使用SQL Server 2008遠(yuǎn)程鏈接時(shí)SQL數(shù)據(jù)庫不成功問題的解決方法,需要的朋友可以參考下2013-08-08Linux編譯mssql擴(kuò)展使用php連接sqlserver2008的使用步驟
這篇文章主要介紹了Linux下php連接sqlserver2008的使用步驟,大家參考使用吧2013-11-11SQLServer2008新實(shí)例遠(yuǎn)程數(shù)據(jù)庫鏈接問題(sp_addlinkedserver)
這篇文章主要介紹了SQLServer2008新實(shí)例遠(yuǎn)程數(shù)據(jù)庫鏈接問題(sp_addlinkedserver),需要的朋友可以參考下2017-05-05SQL2008 附加數(shù)據(jù)庫提示 5120錯(cuò)誤 解決辦法
SQL2008 附加數(shù)據(jù)庫提示 5120錯(cuò)誤 解決辦法,需要的朋友可以參考一下2013-03-03win2008 r2安裝SQL SERVER 2008 R2 不能打開1433端口設(shè)置方法
這篇文章主要介紹了win2008 r2安裝SQL SERVER 2008 R2 不能打開1433端口設(shè)置方法,需要的朋友可以參考下2017-01-01SQL Server 2008 Express如何開啟遠(yuǎn)程訪問
這篇文章主要介紹了SQL Server 2008 Express 遠(yuǎn)程訪問的設(shè)置方法,需要的朋友可以參考下2015-10-10SQL2008 附加數(shù)據(jù)庫提示5120錯(cuò)誤解決方法
有些朋友在操作sql2008數(shù)據(jù)庫時(shí)會提示5120錯(cuò)誤,本文將介紹詳細(xì)的解決方法,有需要的朋友可以參考下2012-12-12SQL SERVER 2008 r2 數(shù)據(jù)壓縮的兩種方法
這篇文章主要介紹了SQL SERVER 2008 r2 數(shù)據(jù)壓縮的兩種方法,腳本之家從多個(gè)網(wǎng)站整理的內(nèi)容,需要的朋友可以參考下2018-03-03