Поделиться через


Отключение сжатия данных SQL Server в базах данных Azure DevOps Server

В этой статье описывается отключение сжатия данных SQL Server в базах данных Azure DevOps Server.

Исходная версия продукта: Microsoft Azure DevOps Server
Исходный номер базы знаний: 2712111

Итоги

Azure DevOps Server предназначен для использования функций SQL выпуск Enterprise, таких как сжатие страниц, которое недоступно в других выпусках SQL Server. При перемещении одной или нескольких баз данных Azure DevOps Server из выпуск Enterprise SQL Server в не выпуск Enterprise SQL Server (например, в рамках операции отсоединения или подключения коллекции) необходимо отключить это сжатие.

Чтобы отключить сжатие баз данных Azure DevOps Server, можно выполнить [dbo].[prc_EnablePrefixCompression] его. Эта хранимая процедура имеет параметр, который должен иметь значение true, @onlineесли вы хотите отключить сжатие, пока вы продолжаете использовать базу данных коллекции с помощью развертывания Azure DevOps Server, но можно задать значение 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. Размер, возвращаемый приведенным выше запросом, находится в мегабайтах (МБ).
  2. Перед отключением сжатия данных рекомендуется запустить этот запрос для каждой базы данных Azure DevOps Server, а затем убедиться, что достаточно места на диске будет доступно, прежде чем фактически отключить сжатие.

Дополнительная информация

Свяжитесь с нами для получения помощи

Если у вас есть вопросы или вам нужна помощь, создайте запрос в службу поддержки или обратитесь за поддержкой сообщества Azure. Вы также можете отправить отзыв о продукте в сообщество отзывов Azure.