SQL Server 2012 Microsoft Dynamics CRM 2013 的 AlwaysOn 故障轉移設定可能會導致 CRM 報告失敗並出現錯誤訊息
本文將協助解決在設定 SQL Server 2012 AlwaysOn 故障轉移之後,可能會收到 Microsoft Dynamics CRM 報表的錯誤訊息問題。
適用於:Microsoft Dynamics CRM 2011 Microsoft Dynamics CRM 2013
原始 KB 編號: 2991907
徵狀
為 Microsoft Dynamics CRM 2013 設定 SQL Server 2012 AlwaysOn 故障轉移之後,報告可能會失敗,並出現下列錯誤訊息:
報表處理期間發生錯誤。 (rsProcessingAborted)
您也可以在 Microsoft Dynamics CRM Server 和安裝 CRM 報告延伸模組的 SQL Server Reporting Services 伺服器上的 事件檢視器 應用程式記錄中觀察到下列錯誤:
Web 服務要求 SetDataSourceCredentials 至報表伺服器 <ReportServerURL> 失敗,發生 SoapException。 錯誤:報表處理期間發生錯誤。 (rsProcessingAborted)
無法開啟與資料庫的連線。 錯誤:不支援使用 MultiSubnetFailover 連線選項連線到具名 SQL Server 實例。
原因
在 Microsoft Dynamics CRM 的 SQL Server 2012 AlwaysOn 故障轉移設定期間,和連接字串的 MultiSubnetFailover 屬性已設定為 ConfigDB
MSCRM_CONFIG
True。 此外,已在 連接字串 的數據源屬性中定義具名實例。
連接字串範例:
Data Source=MSCRMAG\NamedInstance;Initial Catalog= MSCRM_CONFIG;IntegratedSecurity=SSPI;multisubnetfailover=true
解決方案
若要解決此問題,請將具名實例設定為使用特定的 TCP 連接埠,然後更新 ConfigDB
和 MSCRM_CONFIG
連接字串,以包含具名實例的埠號碼。
設定 SQL 2012 Server 接聽具名實例的特定 TCP 連接埠。 若要執行此動作的指示,請參閱設定伺服器接聽特定 TCP 連接埠 (SQL Server 組態管理員) 。
根據 [設定 SQL Server AlwaysOn 故障轉移的組態和組織資料庫,更新
ConfigDB
登錄機碼和MSCRM_CONFIG
資料庫,以包含具名實例的埠號碼。登錄機碼的
ConfigDB
範例:Data Source=AG_Listener_Name,Port_Number;Initial Catalog= MSCRM_CONFIG;Integrated Security=SSPI;multisubnetfailover=true
ConnectionString 属性的
MSCRM_Config
範例:'Provider=SQLOLEDB;Data Source=AG_Listener_Name,Port_Number;Initial Catalog=OrganizationName_MSCRM;Integrated Security=SSPI;multisubnetfailover=true' where DatabaseName = 'OrganizationName_MSCRM'