本文可協助您解決連線到設定為使用 IPv6 之 SQL Server Analysis Services 伺服器的具名實例時可能發生的問題。
原始產品版本: SQL Server Enterprise
原始 KB 編號: 2658571
徵兆
在 Microsoft SQL Server 中,當您嘗試使用 IPv6 連線到 SQL Server Analysis Services 的具名實例時,您會收到類似下列的錯誤:
無法建立連線,因為目標電腦主動拒絕它 [:: n ]: nnnnn (系統)
注意
在此錯誤中,n 是整數。
原因
如果裝載 SSAS 具名實例的伺服器已設定為在安裝 SQL Server 時使用 IPv4 和 IPv6,就會發生此問題。 然後,伺服器後來重新設定為只使用IPv6。
解決方法
若要解決此問題,請依照下列步驟執行︰
停止 SQL Server Analysis Services 服務。
在 記事本中開啟Msmdredir.ini 檔案。
注意
根據預設, Msmdredir.ini 檔案位於下列資料夾中:
%ProgramFiles%\Microsoft SQL Server\90\Shared\ASConfig。在 [ 實例] 區 段中,確認具名實例的 Port 屬性和 IPv6 屬性的值不同。
刪除 PortIPV6 屬性。
儲存 Msmdredir.ini 檔案,然後結束 [記事本]。
啟動 SQL Server Analysis Services 服務。
其他相關資訊
當 SSAS 偵測到主機伺服器設定為在 IPv4 和 IPv6 上接聽時,SSAS 會在MSmdredir.ini檔案中建立兩個專案。 不過,如果伺服器設定為接聽一個通訊協定,則會 <使用埠> 專案。
請考慮裝載 SSAS 具名實例的伺服器在安裝 SQL Server 時設定為使用 IPv4 和 IPv6 的案例,而伺服器稍後重新設定為只使用 IPv6。 在此案例中 ,Msmdredir.ini 檔案可能包含過時的專案,這些專案不會指向 SSAS 具名實例正在接聽的埠。
當 SQL Server Analysis Services 服務啟動時,服務會偵測所使用的通訊協定,並更新 Msmdredir.ini 檔案。 如果伺服器設定為同時使用 IPv4 和 IPv6,則Msmdredir.ini檔案中有兩個專案。 不過,如果 SQL Server Analysis Services 服務偵測到正在使用其中一個通訊協定,則只會更新 Port 屬性。 因此,PortIPv6 屬性可能包含過時的資訊。
當 SQL Browser 服務讀取過時的資訊時,可能會將要求重新導向至具名實例,並導致連線失敗。 刪除 PortIPv6 屬性中包含的過時資訊時,會使用 Port 屬性中的資訊。