共用方式為


對套用更新時的升級指令碼失敗進行疑難排解

資料庫升級腳本

T-SQL 升級腳本會隨附於每個 SQL Server 累積更新。 它們會在 SQL Server 二進位檔取代為最新版本之後執行。 當您將累積更新 (CU) 套用至現有的 SQL Server 實例,或將它更新為較新版本時,相關聯的安裝程式會以兩個不同的階段執行程式:

  • 在初始階段中,安裝程式只會更新二進位檔(DLL、EXE),而不是資料庫及其物件。

  • 升級完成且服務第一次重新啟動之後,更新程式會使用 C:\Program Files\Microsoft SQL Server\MSSQLXX 資料夾中的腳本msdb110_upgrade.sql啟動資料庫升級。YYYY\MSSQL\Install\

這些 T-SQL 腳本可確保系統資料庫已準備好作為對應 SU 或 Service Packs (SP) 或新版本一部分傳遞的新修正或功能。 CU 和 SP 的完整安裝或升級至新版本需要成功執行資料庫升級腳本。 若無法這麼做,可能會導致 SQL Server 實例發生非預期的問題。 升級腳本執行失敗是 CU 和 SP 安裝失敗的常見原因。 此疑難解答系列涵蓋此類別中的常見失敗,以及您可以採取以解決這些失敗的步驟。

一般疑難排解方法

  1. 如需失敗的詳細數據,請檢閱 SQL Server 錯誤記錄檔 (ERRORLOG)。
  2. 若要略過執行升級腳本,請使用 追蹤旗標 902 啟動 SQL Server。
  3. 根據不同的案例解決失敗的原因。

如MSSQLSERVER_912所述,升級腳本失敗時,安裝精靈會報告初始「等候 資料庫引擎 復原句柄失敗。 檢查 SQL Server 錯誤記錄檔中是否有潛在原因」。 SQL Server 錯誤記錄檔會有 912 和 3417 錯誤訊息的專案。 錯誤 912 和 3417 是與資料庫升級腳本失敗相關聯的一般錯誤。 而上述錯誤 912 的訊息通常會提供這些腳本執行期間完全失敗的相關信息。 針對這些錯誤進行疑難解答並修正時,您必須使用追蹤旗標 902 啟動 SQL Server。

注意

使用追蹤旗標 902 啟動 SQL Server 是疑難解答和修正升級腳本錯誤的一部分。 它適用於 CU、SP 或升級至新版本在執行資料庫升級腳本期間失敗的所有案例。 若要使用追蹤旗標 902 啟動 SQL Server 實例,請參閱 使用追蹤旗標 902 啟動 SQL Server 的步驟。

使用追蹤旗標 902 啟動 SQL Server 之後,您可以在下一節中選取其中一篇文章,以針對您的問題進行疑難解答並加以解決。

資料庫升級文本錯誤訊息

「等候 資料庫引擎 復原句柄失敗」是下列錯誤的常見錯誤訊息: