Share via


容錯移轉叢集疑難排解

適用於:SQL Server

本主題提供下列問題的相關資訊:

  • 基本疑難排解步驟。

  • 從容錯移轉叢集錯誤的狀況復原。

  • 解決最常見的容錯移轉叢集問題。

  • 使用擴充預存程序及 COM 物件。

基本疑難排解步驟

第一個診斷步驟是執行全新的叢集驗證檢查。 如需驗證的詳細資料,請參閱建立容錯移轉叢集:驗證組態。 您不需要中斷任何服務就可完成此作業,而不會影響任何線上叢集資源。 一旦安裝容錯移轉叢集功能之後,就能隨時執行驗證,包括在部署叢集之前、在叢集建立期間,以及在叢集正在執行時。 事實上,若叢集正在使用中,即可執行其他測試,來檢查是否遵循適用於高可用性工作量的最佳做法。 在這些大量測試中,其中只有一些會影響執行中的叢集工作負載,而這些全都位於儲存分類中,因此,略過這整個類別是避免干擾性測試的簡單方法。
容錯移轉叢集隨附內建防護措施,避免在驗證期間執行儲存測試時發生意外的停機時間。 如果叢集在初始驗證時有任何線上群組,而且仍保留選取儲存測試,就會提示使用者確認他們是否想要執行所有測試 (並導致停機時間),或略過測試任何線上群組的磁碟以避免產生停機時間。 如果測試中已排除整個儲存分類,則不會顯示此提示。 這將進行叢集驗證,但不會產生停機時間。

如何重新驗證您的叢集

  1. 在 [容錯移轉叢集] 嵌入式管理單元的主控台樹狀目錄中,確定已選取 [容錯移轉叢集管理],然後在 [管理] 下方,按一下 [驗證設定]

  2. 遵循精靈的指示來指定伺服器和測試,然後執行測試。 執行測試之後,會出現 [摘要] 頁面。

  3. 仍在 [摘要] 頁面時,按一下 [檢視報告] 以檢視測試結果。

    若要在關閉精靈之後檢視測試結果,請參閱 %SystemRoot%\Cluster\Reports\Validation Report date and time.html ,其中 %SystemRoot% 是安裝作業系統所在的資料夾 (例如, C:\Windows)。

  4. 若要檢視將可協助您解譯結果的說明主題,請按一下 [深入了解叢集驗證測試] 。

若要在關閉精靈之後檢視叢集驗證的說明主題,可在 [容錯移轉叢集] 嵌入式管理單元中,依序按一下 [說明]、[說明主題] 及 [內容] 索引標籤,展開容錯移轉叢集說明的內容,然後按一下 [驗證容錯移轉叢集設定]。 驗證精靈完成之後,[摘要報告] 將會顯示結果。 所有測試都必須具備綠色的核取記號來表示通過,或者在某些情況下呈現黃色三角形 (警告)。 尋找問題區域 (紅色 X 或黃色問號) 時,在摘要說明測試結果的報表部分中,按一下個別測試來檢閱詳細資料。 任何紅色 X 的問題都必須加以解決,才能針對 SQL Server 問題進行疑難排解。

安裝更新

安裝更新是避免發生系統問題很重要的一部分。 有用的連結︰

從容錯移轉叢集錯誤的狀況復原

通常,容錯移轉叢集發生錯誤的原因有兩個:

  • 在雙節點的叢集中,有一個節點的硬體故障。 這種硬體故障可能是因為 SCSI 卡或作業系統的錯誤所導致。

    若要從此失敗中復原,請使用 SQL Server 安裝程式將失敗的節點從容錯移轉叢集中移除、在電腦離線的情況下解決硬體失敗、將該電腦回復連線,然後將修復的節點重新加入容錯移轉叢集執行個體中。

    如需詳細資訊,請參閱建立新的 SQL Server 容錯移轉叢集 (安裝程式)從容錯移轉叢集執行個體失敗的狀況復原

  • 作業系統發生錯誤。 在此情況下,節點會離線,但並非無可挽回的嚴重錯誤。

    若要復原錯誤的作業系統,請復原節點,並測試容錯移轉。 如果 SQL Server 執行個體的容錯移轉不當,您就必須使用 SQL Server 安裝程式將 SQL Server 從容錯移轉叢集中移除、進行必要的修復、將該電腦回復連線,然後將修復的節點重新加入容錯移轉叢集執行個體中。

    用這種方式來復原錯誤的作業系統會需要一些時間。 如果可以輕易復原作業系統錯誤,請避免使用這項技術。

    如需詳細資訊,請參閱建立新的 SQL Server 容錯移轉叢集 (安裝程式)操作說明:從案例 2 中的容錯移轉叢集失敗狀況復原

解決一般問題

下列清單描述常見的使用狀況問題,並說明如何解決。

問題:使用錯誤的命令列提示語法安裝 SQL Server

問題 1: 從命令提示字元使用 /qn 參數將難以診斷安裝程式問題,因為 /qn 參數會抑制所有安裝程式對話方塊與錯誤訊息。 如果指定 /qn 參數,所有的安裝程式訊息 (包括錯誤訊息) 都會寫入安裝程式記錄檔。 如需記錄檔的詳細資訊,請參閱 檢視與讀取 SQL Server 安裝程式記錄檔

解決方法 1:使用 /qb 參數,而不使用 /qn 參數。 如果使用 /qb 參數,將會顯示每個步驟的基本 UI (包括錯誤訊息)。

問題:SQL Server 無法在移轉至另一個節點之後登入至網路

問題 1:SQL Server 服務帳戶無法與網域控制站連絡。

解決方法 1:檢查您的事件記錄檔,尋找是否有網路問題的相關記錄 (例如:介面卡失敗或 DNS 問題)。 確認您可以偵測到 (ping) 您的網域控制站。

問題 2:SQL Server 服務帳戶密碼在所有叢集節點上並不相同,或節點並未重新啟動從失敗節點移轉的 SQL Server 服務。

解決方法 2:使用 SQL Server 組態管理員來變更 SQL Server 服務帳戶密碼。 若未這麼做,而且您變更了一個節點上的 SQL Server 服務帳戶密碼,則您必須同時變更所有其他節點上的密碼。 SQL Server 組態管理員會自動執行這項作業。

問題:SQL Server 無法存取叢集磁碟

問題 1: 所有節點上的韌體或驅動程式都未更新。

解決方法 1: 確定所有節點都使用正確韌體版本與相同的驅動程式版本。

問題 2: 節點無法復原從共用叢集磁碟 (具有不同的磁碟機代號) 上之失敗節點移轉的叢集磁碟。

解決方法 2: 叢集磁碟在這兩部伺服器上的磁碟機代號必須相同。 若不相同,請檢閱作業系統和 Microsoft 叢集服務 (MSCS) 的原始安裝。

問題:SQL Server 服務失敗導致容錯移轉

解決方法:若要防止特定伺服器的失敗導致 SQL Server 群組容錯移轉,請使用 Windows 中的叢集系統管理員來設定這些服務,如下所示:

  • 清除 [全文檢索屬性] 對話方塊之 [進階] 索引標籤上的 [影響群組] 核取方塊。 不過,如果 SQL Server 導致容錯移轉,全文檢索搜尋服務就會重新啟動。

問題:SQL Server 未自動啟動

解決方案: 使用 MSCS 中的「叢集管理員」自動啟動容錯移轉叢集。 SQL Server 服務應設定為手動啟動;您應該在 MSCS 中設定叢集系統管理員來啟動 SQL Server 服務。 如需詳細資訊,請參閱 管理服務

問題:「網路名稱」已離線,且您無法使用 TCP/IP 離線到 SQL Server

問題 1: 對於設定為要求 DNS 的叢集資源,DNS 發生失敗。

解決方法 1: 更正 DNS 問題。

問題 2: 網路上有重複的名稱。

解決方法 2: 使用 NBTSTAT 來尋找重複的名稱,然後更正此問題。

問題 3:SQL Server 未使用具名管道進行連線。

解決方法 3: 若要使用具名管道來連線,請使用 SQL Server 組態管理員來建立別名以連線到適當的電腦。 例如,若您有一個具有兩個節點的叢集 (節點 A節點 B),以及具有預設執行個體的容錯移轉叢集執行個體 (Virtsql),則您可以利用下列步驟連接到網路名稱資源已離線的伺服器:

  1. 使用叢集系統管理員,判斷包含 SQL Server 執行個體的群組正在哪個節點上執行。 就此範例而言,是 節點 A

  2. 使用 net start,在該電腦上啟動 SQL Server 服務。 如需使用 net start的詳細資訊,請參閱 手動啟動 SQL Server

  3. 節點 A 上啟動 SQL Server 組態管理員。檢視伺服器正在接聽的管道名稱。 應該類似於 \\.\$$\VIRTSQL\pipe\sql\query。

  4. 在用戶端電腦上,啟動「SQL Server 組態管理員」。

  5. 建立別名 SQLTEST1,透過具名管道來連接到此管道名稱。 若要執行這項操作,請輸入節點 A 作為伺服器名稱,並將管道名稱編輯成 \\.\pipe\$$\VIRTSQL\sql\query。

  6. 使用 SQLTEST1 做為伺服器名稱與這個執行個體連接。

問題:SQL Server 安裝程式在叢集上失敗,錯誤為 11001

問題: [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL.X\Cluster] 中被遺棄的登錄機碼

解決方案: 確定目前並未使用 MSSQL.X 登錄區,然後刪除該叢集機碼。

問題:叢集設定錯誤:「安裝程式的權限不足,無法存取這個目錄:<磁碟機>\Microsoft SQL Server。 安裝無法繼續, 以管理員的身分登入或是連絡您的系統管理員」

問題: 此問題是由未正確分割的 SCSI 共用磁碟機所造成。

解決方案: 使用下列步驟,在共用磁碟上重新建立單一分割區:

  1. 從叢集中刪除磁碟資源。

  2. 刪除磁碟上的所有分割區。

  3. 在磁碟屬性中確認該磁碟是基本磁碟。

  4. 在共用磁碟上建立一個分割區,將磁碟格式化,並指定磁碟的磁碟機代號。

  5. 使用「叢集管理員」(cluadmin) 將磁碟加入叢集。

  6. 執行 SQL Server 安裝程式。

問題:應用程式無法在分散式交易中編列 SQL Server 資源

問題:因為 Windows 中的 Microsoft 分散式交易協調器 (MS DTC) 設定不完整,所以應用程式可能無法在分散式交易中登錄 SQL Server 資源。 這個問題會影響使用分散式交易的連結伺服器、分散式查詢和遠端預存程序。 如需有關如何設定 MS DTC 的詳細資訊,請參閱< Before Installing Failover Clustering>。

解決方法:若要避免這類問題,您必須在已安裝 SQL Server 並設定 MS DTC 的伺服器上完整啟用 MS DTC 服務。

若要完整啟用 MS DTC,請使用下列步驟:

  1. 在 [控制台] 中,開啟 [系統管理工具] ,然後開啟 [電腦管理] 。

  2. 在 [電腦管理] 的左窗格中,展開 [服務及應用程式] ,然後按一下 [服務]

  3. 在 [電腦管理] 的右窗格中,以滑鼠右鍵按一下 [分散式交易協調器],並選取 [屬性]。

  4. [分散式交易協調器] 視窗中,按一下 [一般] 索引標籤,然後按一下 [停止] 來停止服務。

  5. 在 [分散式交易協調器] 視窗中,按一下 [登入] 索引標籤,然後設定登入帳戶 NT AUTHORITY\NetworkService。

  6. 按一下 [套用][確定] ,關閉 [分散式交易協調器] 視窗。 關閉 [電腦管理] 視窗。 關閉 [系統管理工具] 視窗。

使用擴充預存程序與 COM 物件

當您使用具有容錯移轉叢集組態的擴充預存程序時,所有擴充預存程序都必須安裝在與 SQL Server 相依的叢集磁碟上。 這麼做可確保當節點容錯移轉時,仍可使用擴充預存程序。

如果擴充預存程序使用 COM 元件,系統管理員必須將 COM 元件登錄在叢集的每一個節點上。 載入與執行 COM 元件的資訊必須位於作用中節點的登錄中,才能建立該元件。 否則,資訊仍會留在第一次登錄 COM 元件的電腦登錄中。

另請參閱

檢視與讀取 SQL Server 安裝程式記錄檔
擴充預存程序運作方式
擴充預存程序的執行特性