Корпорация Майкрософт распространяет Microsoft SQL Server 2008 R2, SQL Server 2008 R2 SP1 и SQL Server 2008 с исправлениями в виде одного загружаемого файла. Поскольку исправления являются кумулятивными, каждый новый выпуск содержит все исправления и исправления для системы безопасности, которые были включены в предыдущий сервер SQL Server 2008 R2, SQL Server 2008 R2 с пакетом обновления 1 (SP1) и SQL Server 2008 Fix Release.

Введение

Команда DBCC CHECKDB балансирует потребность в производительности и ресурсах. Таким образом, по умолчанию команда DBCC CHECKDB может не максимизировать использование ресурсов при выполнении проверок целостности для базы данных. Например, команда DBCC CHECKDB может не увеличивать использование дискового ввода-вывода при выполнении проверок согласованности для базы данных.

Решение

Сведения о накопительном пакете обновления

SQL Server 2008 с пакетом обновления 2

Исправление для этой проблемы впервые выпущено в накопительном обновлении 9 для SQL Server 2008 с пакетом обновления 2. Чтобы получить дополнительные сведения об этом накопительном пакете обновления, щелкните следующий номер статьи базы знаний Майкрософт:

2673382 Накопительный пакет обновления 9 для SQL Server 2008 с пакетом обновления 2 (SP2)

Примечание Так как сборки являются кумулятивными, каждый новый выпуск исправлений содержит все исправления и все исправления безопасности, которые были включены в предыдущий выпуск исправлений для SQL Server 2008. Рекомендуется установить последнюю версию исправления, которая включает это исправление. Дополнительные сведения можно найти в следующей статье базы знаний Майкрософт:

2402659 Сборки SQL Server 2008, выпущенные после выпуска пакета обновления 2 (SP2) для SQL Server 2008

Исправления Microsoft SQL Server 2008 создаются для конкретных пакетов обновления для SQL Server. Необходимо применить исправление для SQL Server 2008 с пакетом обновления 2 (SP2) к установке SQL Server 2008 с пакетом обновления 2. По умолчанию любое исправление, предоставленное в пакете обновления SQL Server, входит в следующий пакет обновления для SQL Server.

SQL Server 2008 с пакетом обновления 3

Исправление для этой проблемы впервые выпущено в накопительном обновлении 4 для SQL Server 2008 с пакетом обновления 3. Чтобы получить дополнительные сведения об этом накопительном пакете обновления, ознакомьтесь со статьей ниже в базе знаний Майкрософт.

2673383 Накопительный пакет обновления 4 для SQL Server 2008 с пакетом обновления 3 (SP3)

Примечание. Так как сборки являются кумулятивными, каждый новый выпуск исправлений содержит все исправления и все исправления безопасности, которые были включены в предыдущий выпуск исправлений для SQL Server 2008. Корпорация Microsoft рекомендует установить последнюю версию исправления, которая включает это исправление. Дополнительные сведения можно найти в следующей статье базы знаний Майкрософт:

2629969 Сборки SQL Server 2008, выпущенные после выпуска пакета обновления 3 (SP3) для SQL Server 2008

Исправления Microsoft SQL Server 2008 создаются для конкретных пакетов обновления для SQL Server. Вы должны применить исправление SQL Server 2008 с пакетом обновления 3 (SP3) к установке SQL Server 2008 с пакетом обновления 3 (SP3). По умолчанию любое исправление, предоставленное в пакете обновления SQL Server, входит в следующий пакет обновления для SQL Server.

Накопительный пакет обновления 11 для SQL Server 2008 R2

Исправление для этой проблемы впервые выпущено в накопительном обновлении 11. Дополнительные сведения о том, как получить этот накопительный пакет обновления для SQL Server 2008 R2, можно найти в следующей статье базы знаний Майкрософт:

2633145 Накопительный пакет обновления 11 для SQL Server 2008 R2

Примечание. Поскольку сборки являются кумулятивными, каждый новый выпуск исправлений содержит все исправления и все исправления безопасности, которые были включены в предыдущий выпуск исправлений для SQL Server 2008 R2. Рекомендуется установить последнюю версию исправления, которая включает это исправление. Дополнительные сведения можно найти в следующей статье базы знаний Майкрософт:

981356 Сборки SQL Server 2008 R2, выпущенные после выпуска SQL Server 2008 R2

Накопительный пакет обновления 4 для SQL Server 2008 R2 с пакетом обновления 1 (SP1)

Исправление для этой проблемы впервые выпущено в накопительном обновлении 4. Дополнительные сведения о том, как получить этот накопительный пакет обновления для SQL Server 2008 R2 с пакетом обновления 1 (SP1), можно найти в следующей статье базы знаний Майкрософт:

2633146 Накопительный пакет обновления 4 для SQL Server 2008 R2 с пакетом обновления 1 (SP1)

Примечание Так как сборки являются кумулятивными, каждый новый выпуск исправлений содержит все исправления и все исправления безопасности, которые были включены в предыдущий выпуск исправлений для SQL Server 2008 R2 с пакетом обновления 1 (SP1). Рекомендуется установить последнюю версию исправления, которая включает это исправление. Дополнительные сведения можно найти в следующей статье базы знаний Майкрософт:

2567616 Сборки SQL Server 2008 R2, выпущенные после выпуска сервера SQL Server 2008 R2 с пакетом обновления 1 (SP1)

SQL Server 2012

SQL Server 2012 включает изменения кода для этих исправлений. Оба флага трассировки 2562 и 2549, как описано ниже, также относятся к SQL Server 2012. Тем не менее, исправление для уменьшения количества конфликтов в DBCC_MULTIOBJECT_SCANNER кратковременных блокировок не требует флага трассировки 2562 в SQL Server 2012. Эти изменения были включены по умолчанию в SQL Server 2012.

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

В этом накопительном обновлении представлены два флага трассировки для более эффективного использования ресурсов дискового ввода-вывода, когда пользователь выполняет команду DBCC CHECKDB . Несмотря на то что эти усовершенствования предназначены только для PHYSICAL_ONLY  , они также могут повысить общую производительность команд DBCC CHECKDB , не использующих параметр PHYSICAL_ONLY . Флаг трассировки 2562 Этот флаг трассировки включает следующие изменения:

  • Выполните команду DBCC CHECKDB в одном "пакете" независимо от количества индексов в базе данных. По умолчанию команда DBCC CHECKDB пытается минимизировать ресурсы tempdb , ограничивая количество индексов и "факты", которые они создают с помощью концепции "пакеты". Этот флаг трассировки принудительно обеспечивает обработку всего одной партии.

  • Улучшите внутреннюю обработку для определения страниц, которые нужно считать из базы данных. Это уменьшает состязание за DBCC_MULTIOBJECT_SCANNERкратковременной блокировкой.

Одним из результатов использования этого флага трассировки является то, что требования к пространству для базы данных tempdb  могут увеличиваться. База данных tempdb  может увеличиваться до 5% или более, чем база данных пользователей, обрабатываемая командой DBCC CHECKDB . Поэтому мы рекомендуем использовать для базы данных tempdbпредварительный размер не   менее 5% при использовании этого флага трассировки, чтобы избежать автоматического роста, что может замедлить выполнение команды DBCC CHECKDB . Примечание. Флаг трассировки 2562 является флагом трассировки на уровне сеанса. Вы можете включить ее на уровне сеанса. Флаг трассировки 2549 Команда DBCC CHECKDB создает внутренний список страниц для чтения на уникальных дисках во всех файлах базы данных. Эта логика определяет уникальные диски на основе имени физического файла каждого файла. Если базовые диски действительно уникальны, а не буквы диска, команда DBCC CHECKDB будет обрабатывать эти данные как один диск. Если включен этот флаг трассировки, предполагается, что каждый файл базы данных находится на жестком диске. Не используйте этот флаг трассировки, если вы не знаете, что каждый файл основан на уникальном физическом диске. Примечание. Флаг трассировки 2549 является глобальным флагом трассировки. Чтобы включить его, необходимо использовать его в качестве параметра запуска или использовать DBCC TRACEON (2549,-1). Несмотря на то что эти флаги трассировки улучшают производительность команд DBCC CHECKDB , которые предназначены для использования параметра DBCC CHECKDB  , некоторые пользователи могут не заметить никаких улучшений в производительности. Несмотря на то что эти флаги трассировки улучшают использование ресурсов ввода-вывода на диске, базовый уровень производительности дисковых ресурсов может ограничивать общую производительность команды DBCC CHECKDB . Обратите внимание на перечисленные ниже ограничения.

  • Повышение производительности не предназначено для повышения производительности при использовании функции восстановления. Например, повышение производительности не предназначено для повышения производительности при использовании функции REPAIR_ALLOW_DATA_LOSS.

  • Усовершенствования не влияют на команду DBCC CHECKALLOC.

  • Эти улучшения могут помочь команде DBCC CHECKTABLEдля индексов с большим количеством страниц. Однако усовершенствования не предназначены для повышения производительности команды DBCC CHECKTABLE .

Статус

Корпорация Майкрософт подтверждает наличие этой проблемы в своих продуктах, которые перечислены в разделе "Применяется к".

Нужна дополнительная помощь?

Совершенствование навыков
Перейти к обучению
Первоочередный доступ к новым возможностям
Присоединение к программе предварительной оценки Майкрософт

Были ли сведения полезными?

Насколько вы удовлетворены качеством перевода?
Что повлияло на вашу оценку?

Спасибо за ваш отзыв!

×