本文可協助您解決鏡像資料庫處於 已中斷連線 或 復原 狀態的問題。
原始產品版本:SQL Server
原始 KB 編號: 2490051
徵兆
請考慮下列案例:
您有一部在雙伺服器資料庫鏡像中執行 Microsoft SQL Server 次要實例的電腦。
計算機上的 CPU 使用量達到 100%,您無法使用 SQL Server 管理工具來停止 SQL Server 服務。
您可以使用任務管理員結束 SQL Server 次要實例的程式。
您會重新啟動 SQL Server 的次要實例。
在此案例中,所有鏡像資料庫都處於 已中斷連線 或 處於復原 狀態。 此外,每個資料庫的 SQL Server 錯誤記錄檔中會記錄類似下列的錯誤訊息:
略過資料庫 「資料庫名稱」的復原,因為它標示為無法存取的資料庫鏡像資料庫。 鏡像工作階段發生問題。 工作階段缺少仲裁,或者因為連結、端點組態或 (伺服器帳戶或安全性憑證的) 權限等問題以致通訊連結中斷。 若要能夠存取資料庫,請找出在工作階段組態中變更的項目,然後恢復變更。
原因
此問題是因為 SQL Server 資料庫鏡像端點發生問題。
解決方法
若要解決此問題,請使用下列方法。 如果第一個方法無法解決問題,請使用第二個方法。
方法 1
回收資料庫鏡像上的端點。 若要這樣做,請遵循下列步驟:
在主體資料庫上,執行下列 SQL 腳本來停止端點:
ALTER ENDPOINT <Endpoint Name> STATE=STOPPED執行下列 SQL 腳本來重新啟動端點:
ALTER ENDPOINT <Endpoint Name> STATE=STARTED注意
如果您在執行文稿之後,端點之間的通訊不會重新啟動,請在資料庫鏡像上執行腳本。 不過,在您執行此動作之後,資料庫可能會進入 暫停 狀態。 如果發生此問題,請執行下列 SQL 腳稿:
ALTER DATABASE <Database Name> SET PARTNER RESUME
方法 2
刪除並重新建立兩部伺服器上的資料庫鏡像端點。