您目前已離線,請等候您的網際網路重新連線

FIX: 管理資料倉儲資料庫成長非常大啟用 SQL Server 2008 中的 [資料收集器集合工具] 功能之後,

重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。

970014
Microsoft 為一個可下載檔案散佈 Microsoft SQL Server 2008 的修正程式。因為修正程式是累積,每個新版本包含所有 Hotfix 及先前的 SQL Server 2008 隨附所有安全性修正程式都修正發行。
徵狀
Microsoft SQL Server 2008 中啟用 [資料收集器集合工具] 功能之後管理資料倉儲資料庫成長非常大,且將可能會耗盡磁碟空間。

此外,如果您在執行下列查詢您尋找孤立的許多資料列 snapshots.notable_query_plan 或 snapshots.notable_query_text 資料表中:
SELECT COUNT(*)FROM snapshots.notable_query_plan AS qp         WHERE NOT EXISTS (            SELECT *             FROM snapshots.query_stats AS qs            WHERE qs.[sql_handle] = qp.[sql_handle] AND qs.plan_handle = qp.plan_handle                 AND qs.plan_generation_num = qp.plan_generation_num                 AND qs.statement_start_offset = qp.statement_start_offset                 AND qs.statement_end_offset = qp.statement_end_offset                 AND qs.creation_time = qp.creation_time);
SELECT COUNT(*)FROM snapshots.notable_query_text AS qtWHERE NOT EXISTS (            SELECT *             FROM snapshots.query_stats AS qs            WHERE qs.[sql_handle] = qt.[sql_handle]);
發生的原因
泛型刪除程序刪除資料,其對應到特定的快照集識別碼。不過,查詢計劃資料列和查詢文字資料列不會對應到特定的快照集識別碼。因此,泛型刪除程序並不會刪除這些資料列。
解決方案

SQL Server 2008

重要如果您執行發行版本的 SQL Server 2008,您必須使用此修正程式。

這個問題的修正程式先於發行累計更新 6。如需有關如何取得此累積更新套件的 SQL Server 2008 的詳細資訊,按一下 [下列面的文件編號,檢視 「 Microsoft 知識庫 」 中的發行項]:
971490SQL Server 2008 的累積更新套件 6
附註因為組建是累計,每個新的修正程式版本包含所有 Hotfix 及先前的 SQL Server 2008 隨附所有安全性修正程式都修正版本。我們建議您考慮安裝最新的修正程式發行版本包含此 Hotfix。如需詳細資訊,請按一下下列的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:
956909SQL Server 2008 建置發行 SQL Server 2008 之後所發行

SQL Server 2008 Service Pack 1

重要如果您正在執行 SQL Server 2008 Service Pack 1,則必須使用此修正程式。

這個問題的修正程式先於累計更新 4 的 SQL Server 2008 Service Pack 1 發行。如更多有關此累積更新套件,按一下 [下面的文件編號,檢視 「 Microsoft 知識庫 」 中的發行項]:
973602SQL Server 2008 Service Pack 1 的累積更新套件 4
附註因為組建是累計,每個新的修正程式版本包含所有 Hotfix 及先前的 SQL Server 2008 隨附所有安全性修正程式都修正版本。Microsoft 建議您考慮安裝最新的修正程式發行版本包含此 Hotfix。如需詳細資訊,請按一下下列的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:
970365SQL Server 2008 建置發行 SQL Server 2008 Service Pack 1 之後所發行
Microsoft SQL Server 2008 的 Hotfix 會建立特定的 SQL Server Service Pack。您必須將 SQL Server 2008 Service Pack 1 Hotfix 套用至 SQL Server 2008 Service Pack 1 的安裝。預設狀況下,在 SQL Server Service Pack 中提供任何 Hotfix 包含在下一個 SQL Server Service Pack。
其他可行方案
To work around this problem, use the following scripts in the Management Data Warehouse database to delete these orphan rows:
-- Purge snapshots.notable_query_plan table DECLARE @delete_batch_size bigint;    DECLARE @rows_affected int;    SET @delete_batch_size = 500;    SET @rows_affected = @delete_batch_size;    WHILE (@rows_affected = @delete_batch_size)    BEGIN        DELETE TOP (@delete_batch_size) snapshots.notable_query_plan         FROM snapshots.notable_query_plan AS qp         WHERE NOT EXISTS (            SELECT *             FROM snapshots.query_stats AS qs            WHERE qs.[sql_handle] = qp.[sql_handle] AND qs.plan_handle = qp.plan_handle                 AND qs.plan_generation_num = qp.plan_generation_num                 AND qs.statement_start_offset = qp.statement_start_offset                 AND qs.statement_end_offset = qp.statement_end_offset                 AND qs.creation_time = qp.creation_time);        SET @rows_affected = @@ROWCOUNT;        RAISERROR ('Deleted %d orphaned rows from snapshots.notable_query_plan', 0, 1, @rows_affected) WITH NOWAIT;    END;    -- Purge snapshots.notable_query_text table    SET @rows_affected = @delete_batch_size;    WHILE (@rows_affected = @delete_batch_size)    BEGIN        DELETE TOP (@delete_batch_size) snapshots.notable_query_text         FROM snapshots.notable_query_text AS qt        WHERE NOT EXISTS (            SELECT *             FROM snapshots.query_stats AS qs            WHERE qs.[sql_handle] = qt.[sql_handle]);        SET @rows_affected = @@ROWCOUNT;        RAISERROR ('Deleted %d orphaned rows from snapshots.notable_query_text', 0, 1, @rows_affected) WITH NOWAIT;    END;
狀況說明
Microsoft 已確認<適用於>一節所列之 Microsoft 產品確實有此問題。
参考
如更多有關累加式的維修模型為 SQL Server,按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的發行項:
935897累加式的維修模型是可以從 SQL Server 小組來傳遞回報問題的 Hotfix


如 SQL Server 更新命名的結構描述的更多有關,按一下 [下面的文件編號,檢視 「 Microsoft 知識庫 」 中的發行項]:
822499Microsoft SQL Server 軟體更新套件的新命名結構描述


如需有關軟體更新術語的詳細資訊,按一下 [下面的文件編號,檢視 「 Microsoft 知識庫 」 中的發行項]:
824684用來描述 Microsoft 軟體更新標準術語的說明

警告:本文已自動翻譯

內容

文章識別碼:970014 - 最後檢閱時間:07/21/2009 01:09:51 - 修訂: 1.1

  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Workgroup
  • kbmt kbsurveynew kbexpertiseadvanced kbqfe kbfix KB970014 KbMtzh
意見反應