共用方式為


升級至 SQL Server 2022 時的問題

適用於: SQL Server 2022、SQL Server 2019、SQL Server 2017、SQL Server 2016

本文提供執行 SQL Server 2022 升級時,針對下列常見問題進行疑難解答和解決的步驟。

當您在 Always On 環境中執行 SQL Server 2022 升級時,就會發生與存取違規傾印相關的錯誤。 錯誤訊息和相關聯的記錄專案表示升級程式期間產生的嚴重例外狀況。

錯誤訊息

例外狀況代碼:c00000005 EXCEPTION_ACCESS_VIOLATION

應用程式事件記錄檔:

Error: A user request from the session with SPID <SPID> generated a fatal exception. SQL Server is terminating this session.
Information: Windows Error Reporting - Fault bucket INVALID_REQUEST, type 0

SQL Server 錯誤記錄檔:

Error: A user request from the session with SPID <SPID> generated a fatal exception. SQL Server is terminating this session. Contact Product Support Services with the dump produced in the log directory.

解決方法:

SQL Server 2022 中LIGHTWEIGHT_QUERY_PROFILING有已知問題

此問題已在 SQL Server 2022 的累積更新 4 和 SQL Server 2019 的累積更新 20 中修正。

因應措施

若要解決此問題,請停用 LIGHTWEIGHT_QUERY_PROFILING。 您可以使用資料庫範圍組態,在資料庫層級LIGHTWEIGHT_QUERY_PROFILING停用輕量型分析ALTER DATABASE SCOPED CONFIGURATION SET LIGHTWEIGHT_QUERY_PROFILING = OFF;

由於 SQL Server 2022 的非使用中實例,因此無法升級至 SQL Server 2022。

原因:

當先前的 SQL Server 安裝失敗時,就會發生此問題,而在電腦上留下部分安裝的實例。 如果發生失敗,SQL Server 安裝程式不會自動回復安裝。 部分安裝的實例不包含您嘗試安裝的 SQL Server 版本,導致嘗試升級至相同版本的後續安裝失敗。

解決方法:

若要解決此問題,請遵循移除 SQL Server 部分安裝中所述的步驟。

問題3:故障轉移叢集實例無法上線

將 SQL Server 從舊版升級至故障轉移叢集實例上的 2022 之後,您可能會遇到實例無法上線的情況。 檢查叢集管理員上的FCI角色時,您注意到實例無法啟動。

可能的原因:

此問題的其中一個可能原因是 SQL Server 實例可能處於腳本升級模式,因而無法啟動。 在升級程式期間,SQL Server 會經歷數個步驟,以確保順利轉換,包括執行升級腳本。 如果實例卡在腳本升級模式中,將無法上線。

因應措施

若要解決此問題並成功讓 SQL Server 實例上線,您可以遵循套用更新時針對升級腳本失敗進行疑難解答中的步驟,略過執行中的升級腳本。

注意

-T902 參數會在啟動期間停用升級腳本執行。

當您升級至可用性群組 (AG) 中裝載散發資料庫的機器上升級至 SQL Server 2022 時,就會發生與復寫相關的錯誤。

注意

當您將 SQL Server 從版本 2016 SP2 CU3、SQL Server 2017 CU6 或更新版本升級至 SQL Server 2019 時,也可能會發生此問題。 此問題的修正可在 SQL Server 2019 的累積更新 21 中使用

錯誤訊息

SQL 安裝程式完成,但會顯示複寫元件「執行複寫升級腳本時發生錯誤」錯誤。 如果您嘗試在此狀態下的實例上執行修復,您會收到相同的錯誤訊息。

SQL Server 錯誤記錄檔:

Executing sp_vupgrade_replication.
Could not open distribution database <distribution_db_name> because it is offline or being recovered. Replication settings and system objects could not be upgraded. Be sure this database is available and run sp_vupgrade_replication again.
Error executing sp_vupgrade_replication.
Saving upgrade script status to 'SOFTWARE\Microsoft\MSSQLServer\Replication\Setup'.

原因:

當散發資料庫是 AG 的一部分,且嘗試就地升級時,就會發生錯誤。

解決方法:

此問題的修正可在 SQL Server 2022 的累積更新 5 中使用

因應措施

若要暫時解決此問題,請遵循下列步驟:

  1. 從 AG 移除散發資料庫。
  2. 繼續升級至 SQL Server 2022。
  3. 完成升級之後,請將散發資料庫新增回 AG。

其他相關資訊