在 Azure DevOps Server 資料庫中停用 SQL Server 數據壓縮

本文說明如何在 Azure DevOps Server 資料庫中停用 SQL Server 數據壓縮。

原始產品版本:Microsoft Azure DevOps Server
原始 KB 編號: 2712111

摘要

Azure DevOps Server 已設計成使用 SQL Enterprise Edition 功能,例如頁面壓縮,這在其他版本的 SQL Server 中無法使用。 將一或多個 Azure DevOps Server 資料庫從 SQL Server 的 Enterprise Edition 移至 SQL Server (的非 Enterprise Edition 時,作為集合卸離/附加作業的一部分,例如) 必須停用該壓縮.

若要停用 Azure DevOps Server 資料庫的壓縮,您可以針對它執行[dbo].[prc_EnablePrefixCompression]。 此預存程式具有 參數 ,@online如果您想要在透過 Azure DevOps Server 部署繼續使用集合資料庫時停用壓縮,則應該設定為 true,但可以設定為 false,否則可以設定為 false 以加速作業。 不論是哪一種情況,執行此預存程式的步驟都會是:

  1. 啟動 SQL Server Management Studio。

  2. 找出要移動的 Azure DevOps Server 資料庫。 以滑鼠右鍵按兩下資料庫,然後選取 [ 追加查詢]

  3. 請輸入下列其中一項:

    EXEC [dbo].[prc_EnablePrefixCompression] @online = 0, @disable = 1
    
    EXEC [dbo].[prc_EnablePrefixCompression] @online = 1, @disable = 1
    

    注意事項

    視您是否打算在停用壓縮時繼續使用資料庫而定。

  4. 執行 (執行) 查詢,並在訊息下確認成功。

  5. 針對將要移動的所有必要資料庫重複步驟 1 到 4。

停用壓縮需要額外的磁碟空間。 下列查詢可使用與上述相同的步驟來執行,可為您提供停用壓縮后所需額外磁碟空間量的估計值。

select sum(used_page_count) * 8 * 2 /1024.0
from sys.partitions p
join sys.dm_db_partition_stats s
on s.partition_id = p.partition_id
and s.object_id = p.object_id
and s.index_id = p.index_id
where p.data_compression_desc = 'page'

注意事項

  1. 上述查詢所傳回的大小為 MB (MB) 。
  2. 建議您在停用數據壓縮之前,先對每個 Azure DevOps Server 資料庫執行此查詢,然後確保在實際停用壓縮之前有足夠的磁碟空間可供使用。

其他相關資訊

與我們連絡,以取得說明

如果您有問題或需要相關協助,請建立支援要求,或詢問 Azure community 支援。 您也可以將產品意見反應提交給 Azure 意應見反社群