使用 Microsoft 登入
登入或建立帳戶。
您好:
選取其他帳戶。
您有多個帳戶
選擇您要用來登入的帳戶。

徵狀

假設您要在 Microsoft SQL Server 2016 或2017中建立或除去大量的臨時資料表。 某些應用程式工作負荷會使臨時資料表的快取失效。 例如,您正在建立臨時資料表,然後建立 ALTER TABLE,或建立索引 ,這會使 臨時資料表的快取無效。 在這種情況下,您可能會遇到下列問題:

  • 在系統目錄 sysobjvalues 的 tempdb 中的資料定義語言(DDL)爭用,以及大量等待 PAGELATCH_EX 的會話時,PAGELATCH_SH 並 PAGELATCH_UP 等待類型。

  • 此情況也會影響專案數量超過4000的工作負荷。 不過,這可能會根據工作負載而有所不同。 請參閱下列範例:

     

    SELECT [name], [type], [entries_count], [entries_in_use_count]

    FROM sys.dm_os_memory_cache_counters

    WHERE [type] = N'CACHESTORE_TEMPTABLES'

    列名

    輸入

    entries_count

    entries_in_use_count

    臨時資料表 & 資料表變數

    CACHESTORE_TEMPTABLES

    <計數>

    <計數>

解決方案

此問題已在 SQL Server 的下列累積更新中修正:

       SQL Server 2017 累積更新5

       SQL Server 2016 SP1 的累積更新8

每個新的 SQL Server 累計更新都包含所有的修正程式,以及前一個累積更新中所包含的所有安全性修正程式。 查看 SQL Server 的最新累計更新:

SQL Server 2017 的最新累計更新

SQL Server 2016 的最新累計更新

狀態

Microsoft 已確認<適用於>一節中所列的 Microsoft 產品確實有上述問題。

參考

瞭解 Microsoft 用於描述軟體更新的 詞彙

需要更多協助嗎?

想要其他選項嗎?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。

社群可協助您詢問並回答問題、提供意見反應,以及聆聽來自具有豐富知識的專家意見。

這項資訊有幫助嗎?

您對語言品質的滿意度如何?
以下何者是您會在意的事項?
按下 [提交] 後,您的意見反應將用來改善 Microsoft 產品與服務。 您的 IT 管理員將能夠收集這些資料。 隱私權聲明。

感謝您的意見反應!

×