針對管理BizTalk Server進行疑難排解
本章節提供一個集中的位置來保存使用 BizTalk Server 管理主控台時經常遇到之問題的相關資訊。
除了下列已知問題之外,使用 BizTalk Server 管理主控台的常見問題和解決方式也會提供其他資訊。
已知問題
ENTSSO 服務的延遲可防止BizTalk Server服務啟動
問題
將未設定為自動啟動的 DTC 重新開機電腦,可能會導致BizTalk Server服務無法啟動。
原因
這是因為 ENTSSO 服務可能需要比BizTalk Server服務逾時持續時間所允許的時間還要長。
解決方案
若要解決此問題,請將 DTC 設定為自動。 如果已叢集 DTC,它應該設定為手動啟動,因為叢集服務正在管理叢集服務的啟動和停止。
SQL 資源可能會鎖定
問題
可能發生下列錯誤:
交易 (進程識別碼 95) 在另一個進程鎖定資源上死結,並已選擇為死結犧牲者。 請重新執行該交易。
原因
這是一個非常罕見的情況,其中一位使用者執行的系統管理作業會導致另一位使用者遭到資料庫管理鎖定。
解決方案
問題應該很快就會修復。 幾分鐘後再試一次作業。
SQL 資料庫可能會變成鎖定
問題
使用者可能會鎖定 SQL 資料庫。 可能會傳回許多不同的錯誤訊息。
原因
在某些情況下,寫入資料庫的某個使用者將有效地鎖定另一位使用者離開資料庫。
解決方案
問題應該很快就會修復。 幾分鐘後再試一次作業。
在多個訊息方塊環境中終止多個服務實例失敗,併發生錯誤
問題
嘗試從 BizTalk Server 管理主控台終止多個服務實例失敗,並顯示類似下列的錯誤:
SQL Server封鎖對元件 'Agent XP' 程式 'sys.xp_sqlagent_enum_jobs' 的存取,因為此元件已關閉為此伺服器的安全性設定的一部分。
注意
此問題發生在多個訊息方塊環境中。
原因
如果 SQL 代理程式作業 'Operations_OperateOnInstances_OnMaster_ <dbName> ' 未在次要訊息方塊資料庫上執行,就會在多個訊息方塊環境中發生此問題。 此作業必須執行,才能將資訊從次要訊息方塊資料庫傳播至主要訊息方塊資料庫。 如果未啟用或發生登入失敗,此作業將無法執行。
解決方案
如果您使用 BizTalk 管理主控台同時對多個服務實例執行作業,且您的BizTalk Server環境已設定多個 messagebox 資料庫,請確認所有次要 (非主要) 訊息方塊資料庫上都已啟用名為 'Operations_OperateOnInstances_OnMaster_ <dbName> ' 的SQL Server Agent作業。 此外,裝載輔助訊息方塊資料庫之SQL Server電腦上的SQL Server Agent服務必須以次要訊息方塊資料庫BTS_SQLAGENT_USER資料庫角色中包含的帳戶來執行。
注意
<dbname>是 BizTalk 訊息方塊資料庫實際名稱的預留位置。
請遵循下列步驟,將SQL Server Agent服務帳戶新增至輔助訊息方塊資料庫的BTS_SQLAGENT_USER資料庫角色
在 SQL Server 2008
按一下[開始],指向[所有程式],指向[Microsoft SQL Server 2008],然後按一下[SQL Server Management Studio]。
出現提示時,請選擇Database Engine的伺服器類型,然後輸入或選取裝載次要訊息方塊資料庫的伺服器名稱。
按一下以展開 [資料庫],按一下以展開次要訊息方塊資料庫、按一下以展開 [安全性]、按一下以展開 [ 角色]、[ 資料庫角色],然後按兩下BTS_SQLAGENT_USER資料庫角色。
按一下 [新增] 按鈕。
按一下[流覽],選取SQL Server Agent服務帳戶所屬的群組,然後按一下 [確定]。
注意
如果SQL Server Agent服務帳戶不是指定群組的成員,則必須將其新增至群組。
套用到 BizTalk 管理主控台之一個執行個體的變更不會自動更新到 BizTalk 管理主控台的其他執行個體
問題
如果有多個 BizTalk 管理主控台的執行個體同時連接到相同的 BizTalk Server 群組,則在 BizTalk 管理主控台的一個執行個體中所做的變更不會自動反映到 BizTalk 管理主控台的其他執行個體。 當您嘗試修改顯示於 BizTalk 管理主控台的執行個體內的成品,而該成品的狀態不符合 BizTalk 管理資料庫中儲存之成品的實際狀態時,這樣會造成並行違規錯誤。
原因
BizTalk 管理主控台的每一個執行個體都會維護其自身的 BizTalk 群組組態快取,而且只會在快取中反映變更。 只有當重新整理 BizTalk 管理主控台檢視時,才會更新此快取。
解決方案
如果您在 BizTalk 管理主控台中收到並行違規錯誤,請按一下 BizTalk 管理主控台工具列上的 [ 重新 整理] 按鈕或按 F5 鍵,更新 BizTalk 管理主控台實例的快取。
當嘗試使用 BizTalk 管理主控台停止協調流程時,發生無法執行動作 '停止' 錯誤
問題
當您嘗試使用 BizTalk 管理主控台停止協調流程時,會產生類似以下的錯誤訊息:
Failed to execute action 'Stop'.
------------------------------
ADDITIONAL INFORMATION:
A transport-level error has occurred when sending the request to the server. (provider: TCP Provider, error: 0 - An existing connection was forcibly closed by the remote host.) (Microsoft SQL Server, Error: 10054)
如果下列條件成立,可能就會發生這個問題:
BizTalk 管理主控台已開啟。
在叢集的 SQL Server 執行個體上安裝 BizTalk 管理資料庫。
容錯移轉叢集的 SQL Server 執行個體。
在完成容錯移轉之後,您嘗試使用 BizTalk 管理主控台來停止執行中的協調流程執行個體。
原因
BizTalk 管理主控台會維護與BizTalk Server管理資料庫的連線。 當容錯移轉期間BizTalk Server管理資料庫的連線中斷時,某些管理工作可能會傳回「無法連線」或「無法執行」錯誤,直到 BizTalk 管理主控台關閉並重新開啟為止。
解決方案
關閉 BizTalk 管理主控台,並將它重新開啟。 當 BizTalk 管理主控台重新開啟時,它會建立與指定之BizTalk Server管理資料庫的新連線。
之前已刪除的 Windows 群組名稱無法存取 BizTalk Server 資料庫
問題
如果重新安裝BizTalk Server時,您會使用先前刪除的 Windows 組名,Windows 群組將無法存取BizTalk Server資料庫。
原因
刪除某個 Windows 群組,然後建立相同名稱的 Windows 群組時,會針對該 Windows 群組產生新的安全性識別碼 (SID)。 但是,舊的 SID 仍然會在 SQL Server 中快取,所以新的 Windows 群組無法登入 SQL Server。
解決方案
當您刪除 Windows 群組時,也必須一併移除此 Windows 群組的 SQL Server 登入。
BizTalk 系統管理員無法啟動 BizTalk Server 管理主控台
問題
BizTalk 系統管理員 (BizTalk 系統管理員 Windows 群組的成員) 如果不是本機電腦上 Windows 系統管理員群組的成員,則可能無法開啟 BizTalk Server 管理主控台。
原因
如果您已經重新安裝或重新設定 BizTalk Server,可能會發生這個問題。 這是因為 SQL Server 使用了快取的安全性識別碼。
解決方案
暫時將 BizTalk 系統管理員加入本機電腦上的 Windows 系統管理員群組。 當成功開啟 BizTalk Server 管理主控台時,請從本機電腦上的本機 Windows 系統管理員群組中移除 BizTalk 系統管理員。
無法在遠端電腦上啟動主控件執行個體
問題
當您在遠端電腦上建立 BizTalk 主機實例時,您可能會在啟動 BizTalk 主機實例時看到下列錯誤:「因為登入失敗而無法啟動」。
原因
如果您已經針對執行 BizTalk 主控件執行個體所用的服務帳戶輸入了無效的認證,或是此服務帳戶沒有具備服務權限的登入,則可能會發生這個錯誤。
解決方案
將具有服務權限的登入指派給遠端電腦中的服務帳戶,然後再啟動 BizTalk 主控件執行個體。 這會自動在本機電腦上執行,但是遠端電腦上則必須以手動方式執行。
選取僅 32 位元選項在 X64 電腦上建立或設定主控件執行個體會失敗
問題
在 BizTalk Server 管理主控台中,在 X64 電腦上建立 BizTalk 主機實例,並選取 [僅限 32 位] 選項, (預設) 可能會失敗。
在 BizTalk Server 組態管理員中,選取 [僅 32 位元] 選項在 X64 電腦上設定 BizTalk Server 執行階段、建立內含式或外掛式主控件執行個體時,會導致服務無法啟動。
原因
Unknown
解決方案
此問題會間歇發生。 嘗試再次建立或設定主控件,或者取消選取 [僅 32 位元] 選項。
刪除主控件執行個體未清除登錄資訊
問題
如果您不是本機電腦上的系統管理員,當您刪除內含式或外掛式主控件時,會出現拒絕存取錯誤訊息。 您可以強制刪除此主控件; 但是,以這種方式刪除主控件不會清除所有相關的登錄資訊。
原因
刪除與主控件執行個體有關的登錄資訊需要系統管理員權限。
解決方案
以本機系統管理員帳戶登入,然後再刪除主控件,如此也會一併移除相關的登錄資訊。
無法刪除 MessageBox 資料庫
問題
您可能無法刪除 MessageBox 資料庫; 如果刪除失敗,則可能是以下其中一個問題所造成:
快取重新整理間隔尚未過期。
MessageBox 資料庫包含未完成的執行個體。
如果快取重新整理間隔尚未過期,刪除失敗時會出現下列錯誤訊息:「MessageBox 無法刪除,因為 MessageBox 中可能有剩餘的工作。 請確定 MessageBox 沒有未完成的執行個體,然後再試一次。"
原因
在您於 MessageBox 資料庫中停用新的訊息發佈與刪除此資料庫的兩段時間之間,快取重新整理間隔必須過期。 根據預設,快取重新整理間隔為 60 秒。
解決方案
若要刪除 MessageBox 資料庫,您必須先停用該 MessageBox 資料庫的新訊息發佈,然後等候快取重新整理間隔過期,再刪除 MessageBox 資料庫。
如果 MessageBox 資料庫包含不完整的服務實例,則會出現下列錯誤訊息:「無法刪除 MessageBox,因為它可能仍然包含不完整的實例。 請確定 MessageBox 沒有未完成的執行個體,然後再試一次。"
您可以使用 BizTalk Server 管理主控台中的 [群組中樞] 頁面,檢視 MessageBox 資料庫中未完成的服務執行個體。 如需在群組中樞頁面中檢視服務實例狀態的相關資訊,請參閱 如何搜尋追蹤的服務實例。