共用方式為


批次模式處理與大型頁面記憶體模型之間的互操作性問題

本文可協助您解決在數據行存放區上使用批次模式處理所產生的效能和穩定性問題,以及在 SQL Server 中使用大型頁面記憶體模型的數據列存放區。

原始產品版本:SQL Server 2012、SQL Server 2014、SQL Server 2016、SQL Server 2017、SQL Server 2019、SQL Server 2022
原始 KB 編號: 3210239

徵狀

在此案例中,您會遇到下列一或多個問題:

  • SQL Server 錯誤記錄檔中未產生的排程器錯誤和相關聯的記憶體轉儲。

  • 使用批次模式處理的查詢可能會遇到嚴重的效能問題。

  • SQL Server 錯誤記錄檔中的存取違規例外狀況和相關聯的記憶體轉儲。

  • 當您執行 sp_createstats時,可能會看到下列錯誤訊息:

    There is insufficient system memory in resource pool 'default' to run this query
    

因應措施

若要減輕這些問題,請嘗試下列兩種方法之一或兩種方法:

  • 從 SQL Server 實例上的 SQL Server 啟動參數移除追蹤旗標 834 (-T834) ,以停用大型頁面記憶體模型。 當您完成此步驟時,SQL Server 停止使用large page記憶體模型,並還原為 conventionallock pages 記憶體模型。

  • 如果您未在 SQL Server 中使用資料行存放區索引,而且您遇到描述的徵兆,您可以使用 在資料庫層級停用ALTER DATABASE SCOPED CONFIGURATION SET BATCH_MODE_ON_ROWSTORE = OFF數據列存放區上的批次模式。 如需詳細資訊,請參閱 ALTER DATABASE SCOPED CONFIGURATION

其他相關資訊