DBCC TRACEON — флаги трассировки (Transact-SQL)
Применимо к: SQL Server Управляемый экземпляр SQL Azure
Флаги трассировки используются для установки определенных характеристик сервера или изменения определенного режима. Например, флаг трассировки 3226 — это часто используемый флаг трассировки запуска, который подавляет сообщения об успешном резервном копировании в журнале ошибок. Флаги трассировки часто используются для диагностики проблем с производительностью или отладки хранимых процедур или сложных компьютерных систем, но они также могут быть рекомендованы служба поддержки Майкрософт для устранения проблем с поведением, которое негативно влияет на определенную рабочую нагрузку.
Все описанные флаги трассировки и те из них, которые рекомендуются службой поддержки Майкрософт, полностью поддерживаются в рабочей среде при использовании в порядке, указанном выше. К флагам трассировки в этом списке могут относиться дополнительные соображения, касающиеся их использования в определенном случае, поэтому рекомендуется тщательно изучить все рекомендации, приведенные здесь и предоставленные сотрудником службы поддержки. Кроме того, как и в случае изменения конфигурации в SQL Server, всегда тщательно проверяйте флаг в тестовой среде перед развертыванием.
Remarks
В SQL Server флаги трассировки могут работать в трех областях: запрос, сеанс и глобальная область. Флаги трассировки для запроса активны в контексте конкретного запроса. Флаги трассировки сеанса действуют во время данного соединения и доступны только для этого соединения. Глобальные флаги трассировки устанавливаются на уровне сервера и доступны для каждого соединения с этим сервером. Некоторые флаги могут быть включены только как глобальные, а некоторые и как глобальные, и как для сеанса.
Применяются следующие правила.
Глобальный флаг трассировки должен быть включен глобально. В противном случае, флаг трассировки не повлияет на работу сервера. Рекомендуется включить глобальные флаги трассировки при запуске, используя для этого
-T
параметр командной строки в Windows или mssql-confв Linux. Таким образом, флаг трассировки останется активным после перезапуска сервера. Перезапустите SQL Server, чтобы применить флаг трассировки.Если флаг трассировки может использоваться в глобальной области или в области сеанса или запроса, его нужно включить в соответствующей области. Флаг трассировки, включенный на уровне сеанса, никогда не влияет на другой сеанс. Действие флага трассировки прекращается, если SPID, открывший сеанс, выполняет выход.
Флаги трассировки устанавливаются и снимаются с помощью любого из следующих методов:
С помощью команд
DBCC TRACEON
иDBCC TRACEOFF
.Например, чтобы глобально включить флаг трассировки 2528, используйте DBCC TRACEON с аргументом
-1
:DBCC TRACEON (2528, -1)
. Эффект включения глобального флага трассировки с помощьюDBCC TRACEON
утрачивается при перезапуске сервера. Чтобы отключить флаг глобальной трассировки, используйте команду DBCC TRACEOFF с аргументом-1
.-T
Использование параметра запуска, чтобы указать, что флаг трассировки установлен во время запуска.Параметр запуска
-T
повсеместно активирует флаг трассировки. Невозможно включить флаг трассировки уровня сеанса с помощью параметра запуска. Таким образом, флаг трассировки останется активным после перезапуска сервера. Дополнительные сведения о параметрах запуска см. в разделе Параметры запуска службы Database Engine.На уровне запроса используйте указание запроса QUERYTRACEON. Параметр QUERYTRACEON поддерживается только для флагов трассировки оптимизатора запросов, задокументированных в таблице, приведенной далее в этой статье.
Использование команды DBCC TRACESTATUS
для определения активных в данный момент флагов трассировки.
Примеры
В следующем примере задается флаг трассировки 3205 для всех сеансов на уровне сервера с помощью DBCC TRACEON
.
DBCC TRACEON (3205, -1);
Можно включить все исправления, влияющие на план, которыми управляют флаги трассировки 4199 и 4137 для конкретного запроса.
SELECT x FROM correlated WHERE f1 = 0 AND f2 = 1 OPTION (QUERYTRACEON 4199, QUERYTRACEON 4137);
Флаги трассировки
В следующей таблице перечислены и описаны флаги трассировки, доступные в SQL Server.
Управляемый экземпляр SQL Azure поддерживает следующие глобальные флаги трассировки: 460, 2301, 2389, 2390, 2453, 2467, 7471, 8207, 9389, 10316 и 11024. Флаги трассировки сеанса пока не поддерживаются в Управляемом экземпляре SQL.
Некоторые флаги трассировки были представлены в определенных версиях SQL Server. Дополнительные сведения о соответствующей версии см. в статье службы поддержки Майкрософт о конкретном флаге трассировки.
Поведение флага трассировки может не поддерживаться в следующих версиях SQL Server.
На флаги трассировки можно ссылаться непосредственно в таблице через закладку, которую можно добавить в конец URL-адреса, используя формат #tfNNNN. Например, чтобы перейти непосредственно к флагу трассировки 1118 в таблице, используйте dbcc-traceon-trace-flags-transact-sql#tf1118
.
Флаг трассировки | Описание |
---|---|
101 | Повышает детализацию для журнала агента репликации слиянием. Важно: Флаг трассировки 101 можно включить только для агент слияния репликации с помощью -T параметра при выполнении replmerg.exeиз командной строки.Предупреждение: Флаг трассировки 101 не предназначен для непрерывного включения в рабочей среде, а только для устранения неполадок, ограниченных по времени. Дополнительные сведения см. в архивной версии статьи KB2892633. Область: только для агента слияния репликации. |
102 | Повышает детализацию журнала агента репликации слиянием и предает его в таблицу <Сервер распространения>..msmerge_history. Важно: Флаг трассировки 102 можно включить только для агент слияния репликации с помощью -T параметра при выполнении replmerg.exeиз командной строки.Предупреждение: Флаг трассировки 102 не предназначен для непрерывного включения в рабочей среде, а только для устранения неполадок, ограниченных по времени. Дополнительные сведения см. в архивной версии статьи KB2892633. Область: только для агента слияния репликации. |
139 | Исправляет семантику преобразования в области команд проверки DBCC, например DBCC CHECKDB, DBCC CHECKTABLE и DBCC CHECKCONSTRAINTS, при анализе улучшенной логики точности и преобразования с уровнем совместимости 130 для определенного типа данных в базе данных с более низким уровнем совместимости. Дополнительные сведения см. здесь: KB4010261. Применимо к: SQL Server 2016 (13.x) RTM CU 3, SQL Server 2016 (13.x) с пакетом обновления 1 (SP1) и более поздних версий. Предупреждение: Флаг трассировки 139 не предназначен для непрерывного включения в рабочей среде и должен использоваться только для выполнения проверок базы данных, описанных в статье KB4010261. Отключите его сразу после завершения проверки. Область: только глобальная. |
174 | Увеличивает число контейнеров в кэше планов Компонент SQL Server Database Engine с 40 009 до 160 001 в 64-разрядных системах. Дополнительные сведения см. в статье KB3026083. Примечание. Тщательно протестируйте этот параметр, прежде чем развертывать его в рабочей среде. Область: только глобальная. |
176 | Устранены ошибки при перестроении секций в сети для таблиц, содержащих вычисляемый столбец секционирования. Дополнительные сведения см. в статьях KB3213683 и KB4541096. Область: глобальная или сеанс. |
205 | Вносит запись в журнал ошибок при повторной компиляции хранимой процедуры, зависящей от статистики, в результате автоматического обновления статистики. Дополнительные сведения см. в архивной версии статьи KB195565. Примечание: Для этого флага трассировки требуется включить флаг трассировки 3605 . Область: только глобальная. |
260 | Выводит сведения о версиях динамически загружаемых библиотек (DLL) расширенных хранимых процедур. Дополнительные сведения о GetXpVersion() см. в статье Создание расширенных хранимых процедур.Область: глобальная или сеанс. |
272 | Отключает предварительное распределение идентификаторов во избежание пропусков значений столбца идентификаторов в случаях, когда сервер неожиданно перезапускается или выполняет обработку отказа на сервер-получатель. Кэширование идентификаторов используется для повышения производительности инструкции INSERT в таблицах со столбцами идентификаторов. Примечание: Начиная с версии SQL Server 2017 (14.x) для выполнения этой задачи на уровне базы данных см. описание параметра IDENTITY_CACHE в разделе ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL). Область: только глобальная. |
460 | Заменяет сообщение об усечении данных с идентификатором 8152 на сообщение с идентификатором 2628. Дополнительные сведения см. здесь: KB4468101. Начиная с версии SQL Server 2019 (15.x) для выполнения этой задачи на уровне базы данных см. описание параметра VERBOSE_TRUNCATION_WARNINGS в разделе ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL). Область применения: SQL Server 2016 (13.x) с пакетом обновления 2 (SP2) с накопительным пакетом обновления 6, SQL Server 2017 (14.x) с накопительным пакетом обновления 12 и более поздних версий. Примечание. Начиная с уровня совместимости базы данных 150 идентификатор сообщения 2628 используется по умолчанию, и этот флаг трассировки не оказывает влияния. Для уровня совместимости базы данных 140 или ниже идентификатор сообщения 2628 остается сообщением об ошибке согласия, требующим включения флага трассировки 460, и эта конфигурация с областью базы данных не влияет. Область: глобальная или сеанс. |
610 | Управляет вставками с минимальным протоколированием в индексированные таблицы. Этот флаг трассировки необязателен начиная с версии SQL Server 2016, поскольку минимальное протоколирование для индексированных таблиц включено по умолчанию. В SQL Server 2016 (13.x), когда операция массовой загрузки приводит к выделению новой страницы, все строки, последовательно заполняющие новую страницу, регистрируются минимально, если выполнены все остальные предварительные требования для минимального ведения журнала. Строки, вставляемые в существующие страницы (без выделения новой страницы) для сохранения порядка индексов, по-прежнему протоколируются полностью, как и строки, перемещенные в результате разбиения страницы во время загрузки. Параметр ALLOW_PAGE_LOCKS должен иметь значение ON для индексов (используется по умолчанию), чтобы операция минимального протоколирования выполнялась, так как при выделении устанавливаются блокировки страниц и протоколируются только выделения страниц или экстентов. Дополнительные сведения см. в статье Руководство по производительности загрузки данных. Область: глобальная или сеанс. |
634 | Отключает фоновую задачу сжатия columnstore. SQL Server периодически выполняет фоновую задачу переноса кортежей, которая сжимает группы строк индекса columnstore с несжатыми данными, по одной такой группе строк за раз. Сжатие columnstore позволяет повысить производительность запросов, но при этом потребляются ресурсы системы. Вы можете управлять временем сжатия columnstore вручную, отключив задачу фонового сжатия с флагом трассировки 634, а затем явно вызвав ALTER INDEX... REORGANIZE или ALTER INDEX... REBUILD в выбранное вами время. Область: только глобальная. |
652 | Отключает сканирование предварительной выборки страниц. Если вы включите флаг трассировки 652, SQL Server больше не будет переносить страницы базы данных в буферный пул, прежде чем эти страницы базы данных будут использоваться при сканировании. В результате запросы, пользующиеся функцией предварительной выборки страниц, демонстрируют низкую производительность. Область: глобальная или сеанс. |
661 | Отключает процесс удаления фантомных записей. Флаг трассировки 661 отключает процесс удаления фантомных записей. Фантомная запись является результатом операции удаления. При удалении записи она сохраняется в виде фантомной записи. Позже удаленная запись очищается процессом удаления фантомных записей. При отключении этого процесса удаленная запись не очищается. Таким образом, пространство, занимаемое удаленной записью, не освобождается. Такое поведение негативно влияет на использование пространства и на производительность операций проверки. Дополнительные сведения см. в руководстве по очистке фантомных записей. Область: только глобальная. |
692 | Отключает быстрые операции вставки при массовой загрузке данных в кучу или кластеризованный индекс. Начиная с версии SQL Server 2016 (13.x); быстрые операции вставки включены по умолчанию с минимальным протоколированием, когда база данных находится в простой модели восстановления или в модели восстановления с неполным протоколированием для оптимизации производительности вставки записей в новые страницы. С помощью быстрой вставки каждый пакет массовой загрузки получает новый экстент или экстенты в обход поиска распределения существующего экстента в доступном свободном пространстве для оптимизации производительности операции вставки. При использовании операций быстрой вставки массовая загрузка с пакетом небольшого размера может привести к увеличению неиспользуемого пространства, занимаемого объектами, поэтому рекомендуется использовать пакеты большого размера для полного заполнения экстента. Если увеличить размер пакета невозможно, этот флаг трассировки поможет сократить неиспользуемое пространство, зарезервированное в ущерб производительности. Применимо к: SQL Server 2016 (13.x) и более поздних версий. Область: глобальная или сеанс. |
715 | Включает блокировку таблицы для операций массовой загрузки в кучу без некластеризованных индексов. Если этот флаг трассировки включен, операции массовой загрузки получают блокировку массового обновления при выполнении массового копирования данных в таблицу. Блокировка массового обновления (BU) позволяет поддерживать несколько одновременных потоков массовой загрузки данных в одну и ту же таблицу и при этом запрещать доступ к таблице любым другим процессам, отличным от массовой загрузки данных. Поведение аналогично тому, когда пользователь явно указывает указание TABLOCK при выполнении массовой загрузки или если sp_tableoption для данной таблицы включена блокировка таблицы при массовой загрузке. Но если этот флаг трассировки включен, это становится поведением по умолчанию без изменения запроса или базы данных.Область: глобальная или сеанс. |
809 | Включает так называемое поведение прямой записи для гибридного буферного пула. Для этого режима требуется, чтобы сохраненный буфер журналов был включен в той же базе данных, что и гибридный буферный пул. Прямая запись позволяет гибридным буферным пулам служить в качестве кэша для грязное и чистых страниц, снижая требования к рабочей нагрузке в буферных пулах DRAM для рабочих нагрузок в стиле OLAP и OLTP. Этот флаг трассировки появился в SQL Server 2022 (16.x), а поведение включено по умолчанию в SQL Server 2022 (16.x) CU 1. Если вы используете SQL Server 2022 (16.x) с накопительным пакетом обновления 1 и более поздних версий, флаг трассировки игнорируется. |
818 | Включает дополнительную диагностику ввода-вывода для проверки потерянных или устаревших операций чтения во время файлового ввода-вывода. Флаг трассировки 818 включает кольцевой буфер в памяти, который используется для отслеживания последних 2048 успешных операций записи, выполняемых SQL Server, не включая операции сортировки и ввода-вывода рабочих файлов. При возникновении таких ошибок, как 605, 823 или 3448, значение регистрационного номера транзакции в журнале (LSN) для входящего буфера сравнивается со списком последних операций записи. Если полученный номер LSN старше, чем тот, который указан во время операции записи, в журнале ошибок SQL Server регистрируется новое сообщение об ошибке. Дополнительные сведения см. в статье SQL Server диагностика обнаружения проблем ввода-вывода. Примечание: Начиная с SQL Server 2017 (14.x) этот флаг трассировки не действует. Область: только глобальная. |
830 | Отключает обнаружение и создание отчетов о запросах ввода-вывода, которые выполняются очень долго. По умолчанию SQL Server использует механизм для обнаружения запросов ввода-вывода на чтение и запись, которые занимают много времени (обычно дольше 15 секунд). Этот флаг трассировки отключает это обнаружение. Дополнительные сведения см. в разделе MSSQLSERVER_833 Примечание: Не рекомендуется включать этот флаг трассировки, так как вы можете снизить способность обнаруживать проблемы ввода-вывода в системе. Область: только глобальная. |
834 | Использует распределение больших страниц для буферного пула, columnstore и таблицы в памяти. Большой размер страницы зависит от аппаратной платформы, но размер страницы может составлять от 2 до 16 МБ. Большие страницы выделяются при запуске и сохраняются в течение всего времени существования процесса. Флаг трассировки 834 повышает производительность за счет повышения эффективности буфера преобразования с отводом в сторону (TLB) в ЦП. Другими словами, флаг трассировки 834 повышает эффективность управления преобразованием адресов физической памяти в виртуальную, выполняемое оборудованием управления памятью. Сведения об SQL Server и больших страницах см. в следующем блоге. Примечание: Флаг трассировки 834 применяется только к 64-разрядным версиям SQL Server. Чтобы включить флаг трассировки 834, необходимо иметь право пользователя Блокировать страницы в памяти. Флаг трассировки 834 можно включить только при запуске. Флаг трассировки 834 может помешать запуску сервера, если память фрагментирована и если не удается выделить большие страницы. Поэтому флаг трассировки 834 лучше всего подходит для серверов, выделенных для SQL Server. Примечание: Если эта функция включена, модель памяти с большими страницами предварительно выделяет всю память SQLOS при запуске экземпляра и не возвращает ее операционной системе. Примечание: Если вы используете функцию индекса Columnstore SQL Server 2012 (11.x) и более поздних версий, не рекомендуется включать флаг трассировки 834. Дополнительные сведения см. здесь: KB3210239. При использовании SQL Server 2019 (15.x) и columnstore см. раздел Флаг трассировки 876. Область: только глобальная. |
836 | Используйте параметр max server memory для буферного пула. Флаг трассировки 836 заставляет SQL Server размер буферного пула при запуске на основе значения параметра max server memory вместо общего объема физической памяти. Флаг трассировки 836 можно использовать для уменьшения количества дескрипторов буфера, выделенных при запуске в режиме 32-разрядных расширений окна адресов (AWE). Примечание: Флаг трассировки 836 применяется только к 32-разрядным версиям SQL Server, для которых включено выделение AWE. Флаг трассировки 836 можно включить только при запуске. Область: только глобальная. |
845 | Включает заблокированные страницы на стандартных номерах SKU SQL Server, если в учетной записи службы для SQL Server включено разрешение на блокировку страниц в памяти. Дополнительные сведения см. в статьях KB970070 и Параметры конфигурации сервера "Server Memory". Примечание: Начиная с SQL Server 2012 (11.x), это поведение включено по умолчанию для номеров SKU категории "Стандартный", и флаг трассировки 845 не должен использоваться. Область: только глобальная. |
876 | Использует большие объемы выделения страниц для columnstore. Примечание: В отличие от флага трассировки 834, использование флага трассировки 876 не выполняет предварительное выделение памяти SQLOS при запуске экземпляра, и неиспользуемая память может быть освобождена. Применимо к: SQL Server 2019 (15.x) и более поздних версий. Примечание. Тщательно протестируйте этот параметр, прежде чем развертывать его в рабочей среде. Область: только глобальная. |
890 | Скрытие длинных сообщений о завершении сканирования буферного пула (ошибка 898) в журнале ошибок. Дополнительные сведения о сканировании буферного пула и сообщении, которое регистрируется в журнале ошибок, см. в статье Операции, запускающие сканирование буферного пула, могут выполняться медленно на компьютерах с большим объемом памяти. Область применения: SQL Server 2017 (14.x) и более поздних версий. Область: только глобальная. |
898 | Отключает поведение прямой записигибридного буферного пула для устранения неполадок или отладки. Дополнительные сведения см. в статье KB5022375. Применимо к: SQL Server 2022 (16.x) CU 1 и более поздних версий. Область: только глобальная. |
902 | Пропускает выполнение скрипта обновления базы данных при установке накопительного пакета обновления или пакета обновления. Если в режиме обновления скрипта возникает ошибка, обратитесь в службу поддержки Microsoft SQL. Дополнительные сведения см. здесь: KB2163980. Предупреждение. Этот флаг трассировки предназначен для устранения сбоя обновлений в режиме обновления скрипта и не должен всегда быть включен в рабочей среде. Скрипты обновления базы данных должны успешно выполняться для полной установки накопительных пакетов обновления и пакетов обновления. В противном случае в экземпляре SQL Server могут возникнуть неожиданные ошибки. Область: только глобальная. |
1117 | Если файл в файловой группе удовлетворяет требованиям порога автоматического увеличения, все файлы в файловой группе увеличиваются. Этот флаг трассировки влияет на все базы данных. Его рекомендуется использовать, только если увеличение всех файлов в файловой группе в каждой базе данных является безопасным. Примечание: Начиная с SQL Server 2016 (13.x) это поведение управляется параметром AUTOGROW_SINGLE_FILE и AUTOGROW_ALL_FILES ALTER DATABASE, а флаг трассировки 1117 не действует. Дополнительные сведения см. в разделе Параметры инструкции ALTER DATABASE (Transact-SQL) для файлов и файловых групп. Область: только глобальная. |
1118 | Приводит к выделению страниц в однородных, а не смешанных экстентах, что уменьшает вероятность состязания на странице SGAM. При создании нового объекта по умолчанию выделяются первые восемь страниц из различных экстентов (смешанные экстенты). Затем в случае возникновения необходимости увеличения страниц они выделяются из этого же экстента (однородный экстент). Страница SGAM используется для отслеживания таких смешанных экстентов, так как это может быстро стать узким местом, если происходят многочисленные размещения смешанных страниц. Данный флаг трассировки размещает при создании новых объектов все восемь страниц из одного и того же экстента, что сводит к минимуму необходимость сканирования страницы SGAM. Дополнительные сведения см. здесь: KB328551. Примечание: Начиная с SQL Server 2016 (13.x) это поведение управляется параметром SET MIXED_PAGE_ALLOCATION ALTER DATABASE, а флаг трассировки 1118 не действует. Дополнительные сведения см. в статье Параметры ALTER DATABASE SET (Transact-SQL). Область: только глобальная. |
1204 | Возвращает ресурсы и типы блокировки, участвующие во взаимоблокировке и текущую команду, на которую влияет взаимоблокировка. Дополнительные сведения о взаимоблокировках см. в руководстве по взаимоблокировкам. Примечание: Избегайте использования флага трассировки 1204 в системах с большим объемом рабочей нагрузки, вызывающих взаимоблокировки. Дополнительные сведения о других способах обнаружения взаимоблокировок см. в руководстве по взаимоблокировкам. Область: только глобальная. |
1211 | Отключает укрупнение блокировки, основанное на слишком активном использовании памяти или на количестве блокировок. Компонент SQL Server Database Engine не будет повышать уровень блокировки с блокировки строки или страницы до блокировки таблицы. Использование этого флага трассировки может привести к слишком большому количеству блокировок. Если память блокировки станет достаточно большой, попытки выделить дополнительные блокировки для любого запроса могут завершиться сбоем. Это может привести к снижению производительности компонента Компонент Database Engine или вызвать ошибки 1204 (невозможность выделить блокированный ресурс) из-за недостатка памяти. Если установлены оба флага трассировки 1211 и 1224, то флаг 1211 имеет приоритет. Однако, так как флаг трассировки 1211 предотвращает эскалацию в каждом случае, даже при нехватке памяти, рекомендуется использовать вместо него 1224. Это помогает избежать ошибок «отсутствия блокировок» при использовании большого числа блокировок. Дополнительные сведения о разрешении проблем, связанных с укрупнением блокировки в SQL Server см. в статье KB323630. Область: глобальная или сеанс. |
1222 | Возвращает ресурсы и типы блокировок, участвующих во взаимоблокировке, а также текущую команду, на которую влияет взаимоблокировка, в формате XML, не соответствующем ни одной XSD-схеме. Дополнительные сведения о взаимоблокировках см. в руководстве по взаимоблокировкам. Примечание: Избегайте использования флага трассировки 1222 в системах с большим количеством рабочих нагрузок, вызывающих взаимоблокировки. Дополнительные сведения о других способах обнаружения взаимоблокировок см. в руководстве по взаимоблокировкам. Область: только глобальная. |
1224 | Отключает укрупнение блокировок на основе количества блокировок. Однако слишком активное использование памяти может включить укрупнение блокировок. Компонент Компонент Database Engine укрупняет блокировки строк или страниц до блокировок таблиц (или секций), если объем памяти, используемый блокированными объектами, превышает одно из следующих условий. — 40 % памяти, используемой компонентом Database Engine. Это применимо, только если для параметра locks задано sp_configure значение 0.— 40 % памяти блокировки, настроенной с помощью параметра locks . sp_configure Дополнительные сведения см. в разделе Параметры конфигурации сервера (SQL Server).Если установлены оба флага трассировки 1211 и 1224, то флаг 1211 имеет приоритет. Однако, так как флаг трассировки 1211 предотвращает эскалацию в каждом случае, даже при нехватке памяти, рекомендуется использовать 1224. Это помогает избежать ошибок «отсутствия блокировок» при использовании большого числа блокировок. Примечание. Укрупнением блокировки до уровня гранулярности таблицы или HoBT можно также управлять с помощью параметра LOCK_ESCALATION инструкции ALTER TABLE. Дополнительные сведения о разрешении проблем, связанных с укрупнением блокировки в SQL Server см. в статье KB323630. Область: глобальная или сеанс. |
1229 | Отключает все секционирование блокировок независимо от количества ЦП. По умолчанию SQL Server включает секционирование блокировок, когда сервер имеет 16 ЦП или более, чтобы улучшить масштабируемость крупных систем. Дополнительные сведения о секционировании блокировок см. в статье Руководство по блокировке и управлению версиями строк транзакций. Предупреждение: Флаг трассировки 1229 может привести к состязанию за спин-блокировку и снижению производительности. Область: только глобальная. |
1236 | Включает секционирование блокировок базы данных. Дополнительные сведения см. здесь: KB2926217. Примечание: Начиная с SQL Server 2012 (11.x) с пакетом обновления 3 (SP3) и SQL Server 2014 (12.x) с пакетом обновления 1 (SP1) это поведение контролируется компонентом Database Engine, и флаг трассировки 1236 не действует. Область: только глобальная. |
1237 | Позволяет инструкции ALTER PARTITION FUNCTION соблюдать приоритет определяемой пользователем взаимоблокировки текущего сеанса, а не быть жертвой взаимоблокировки по умолчанию. Дополнительные сведения см. здесь: KB4025261. Примечание: Начиная с SQL Server 2017 (14.x) и уровня совместимости базы данных 140 это поведение является поведением по умолчанию, а флаг трассировки 1237 не действует. Область: глобальная, сеанс или запрос (QUERYTRACEON). |
1260 | Отключение дампов монитора планировщика. Область: только глобальная. |
1448 | Позволяет средству чтения журнала репликации двигаться вперед, даже если асинхронные вторичные реплики не подтвердили получение изменений. Даже если установлен флаг трассировки, средство чтения журнала всегда ожидает синхронные вторичные реплики с состоянием синхронизации СИНХРОНИЗИРОВАНО. Средство чтения журнала не выходит за пределы минимального подтвержденного регистрационного номера транзакции в журнале для СИНХРОНИЗИРОВАННЫХ вторичных реплик. Флаг трассировки применяется к экземпляру SQL Server, а не только к группе доступности, базе данных доступности или экземпляру средства чтения журнала. Вступает в силу немедленно без перезагрузки. Этот флаг трассировки может быть активирован заблаговременно или при сбое асинхронной вторичной реплики. Область: только глобальная. |
1462 | Отключает сжатие потока журналов для асинхронных групп доступности. В асинхронных группах доступности эта функция включена по умолчанию для оптимизации пропускной способности сети. Дополнительные сведения см. в разделе Tune compression for availability group(Настройка сжатия для группы доступности). Область: только глобальная. |
1800 | Включает оптимизацию SQL Server, когда для первичной и вторичной реплики используются диски с разными размерами сектора в средах SQL Server AlwaysOn и доставки журналов. Этот флаг трассировки необходимо включать только для экземпляров SQL Server с файлом журнала транзакций, которые находятся на диске с размером сектора 512 байт. Его не требуется включать на дисках с размером сектора 4 КБ. Дополнительные сведения см. здесь: KB3009974. Область применения: SQL Server 2012 (11.x) с пакетом обновления 1 CU 13, SQL Server 2012 (11.x) с пакетом обновления 2 (SP3), SQL Server 2014 (12.x) RTM с накопительным пакетом обновления 5 и более поздних версий. Область: только глобальная. |
1802 | Отключает изменение ACL и проверку олицетворенного доступа во время операций присоединения или отсоединения базы данных. Это может быть полезно при присоединении базы данных и обнаружении ошибок разрешений на доступ, например ошибки 5120. Область: только глобальная. |
1819 | Позволяет резервное копирование на URL-адрес, чтобы использовать прокси-сервер при доступе к блочным BLOB-объектам Azure. В дополнение к этому флагу трассировки необходимо задать конфигурацию прокси-сервера WinHTTP на сервере одним из следующих способов. — Служебная программа proxycfg.exe в Windows XP, Windows Server 2003 и более ранних версиях. — служебная программа netsh.exe в Windows Vista и Windows Server 2008 и более поздних версиях. Область: глобальная, сеанс или запрос (QUERYTRACEON). |
2301 | Включите оптимизации расширенной поддержки принятия решений, относящиеся к запросам на поддержку принятия решений. Этот параметр применяется для обработки поддержки принятия решений для больших наборов данных. Область: глобальная, сеанс или запрос (QUERYTRACEON). |
2312 | Задает модель оценки кратности оптимизатора запросов SQL Server 2014 (12.x) и более поздних версий независимо от уровня совместимости базы данных. Примечание: Если уровень совместимости базы данных ниже 120, при включении флага трассировки 2312 используется модель оценки кратности SQL Server 2014 (12.x) (120). Дополнительные сведения см. здесь: KB2801413. Начиная с SQL Server 2016 (13.x) с пакетом обновления 1 (SP1) для этого на уровне запроса добавьте USE HINT 'FORCE_DEFAULT_CARDINALITY_ESTIMATION' указание запроса вместо использования этого флага трассировки.Область: глобальная, сеанс или запрос (QUERYTRACEON). |
2335 | Приводит к тому, что SQL Server предполагает наличие фиксированного объема памяти во время оптимизации запроса в ситуации, когда задано слишком большое значение максимальной памяти сервера, в результате чего SQL Server создает неэффективный план для конкретного запроса. Не ограничивает объем памяти, который SQL Server предоставляет для выполнения запроса. Память, настроенная для SQL Server, будет по-прежнему использоваться кэшем данных, выполнением запросов и другими объектами-получателями. Примечание. Тщательно протестируйте этот параметр, прежде чем развертывать его в рабочей среде. Область: глобальная, сеанс или запрос (QUERYTRACEON). |
2338 | Заставляет SQL Server использовать узкий план при выполнении инструкции UPDATE для обновления индексов в таблице. При выполнении обновления для столбца кластеризованного индекса SQL Server обновляет не только сам кластеризованный индекс, но и все некластеризованные индексы, так как некластеризованные индексы содержат ключ кластера. Распространенным способом обновления является обновление кластеризованного индекса, а затем и всех некластеризованных индексов одновременно. SQL Server обновите одну строку, а затем перейдете к следующей строке, пока все не будет завершено. Это называется обновлением узкого плана или обновлением Per-Row. В некоторых случаях компонент Компонент Database Engine может обновить широкий план. Этот флаг трассировки приводит к обновлению узкого плана. Область: глобальная, сеанс или запрос (QUERYTRACEON). |
2340 | Заставляет SQL Server не использовать операцию сортировки (сортировки пакетов) для оптимизации соединений вложенного цикла при формировании плана. По умолчанию SQL Server может использовать оптимизированное соединение вложенными циклами вместо полного сканирования или соединения вложенными циклами с явной сортировкой, если оптимизатор запросов заключает, что сортировка, скорее всего, не требуется, но все же возможна в случае неверной кратности или оценки затрат. Дополнительные сведения см. здесь: KB2009160. Начиная с SQL Server 2016 (13.x) с пакетом обновления 1 (SP1) для этого на уровне запроса добавьте USE HINT 'DISABLE_OPTIMIZED_NESTED_LOOP' указание запроса вместо использования этого флага трассировки.Примечание. Тщательно протестируйте этот параметр, прежде чем развертывать его в рабочей среде. Область: глобальная, сеанс или запрос (QUERYTRACEON). |
2371 | Изменяет порог фиксированного обновления статистики на порог линейного обновления статистики. Дополнительные сведения см. в описании этого параметра AUTO_UPDATE_STATISTICS. Примечание: Начиная с SQL Server 2016 (13.x) и при уровне совместимости базы данных 130 или выше это поведение управляется компонентом Компонент Database Engine, а флаг трассировки 2371 не действует. Область: только глобальная. |
2389 | Включает автоматическое создание быстрой статистики для ключей, сортированных по возрастанию (поправка для гистограммы). Если установлен флаг трассировки 2389 и столбец статистики в начале помечается как восходящий, гистограмма, используемая для оценки кратности, будет скорректирована во время компиляции запроса. Примечание. Тщательно протестируйте этот параметр, прежде чем развертывать его в рабочей среде. Примечание. Этот флаг трассировки не применяется CE версии 120 или более поздней версии. Вместо этого используйте флаг трассировки 4139. Область: глобальная, сеанс или запрос (QUERYTRACEON). |
2390 | Включает автоматическое создание быстрой статистики для ключей, сортированных по возрастанию, или неизвестных ключей (поправка для гистограммы). Если установлен флаг трассировки 2390 и столбец статистики в начале помечается как возрастающий или неизвестный, гистограмма, используемая для оценки кратности, будет скорректирована во время компиляции запроса. Дополнительные сведения см. здесь: KB2801413. Примечание. Тщательно протестируйте этот параметр, прежде чем развертывать его в рабочей среде. Примечание. Этот флаг трассировки не применяется CE версии 120 или более поздней версии. Вместо этого используйте флаг трассировки 4139. Область: глобальная, сеанс или запрос (QUERYTRACEON). |
2422 | Позволяет Компонент SQL Server Database Engine прервать запрос, если превышено максимальное время, заданное конфигурацией REQUEST_MAX_CPU_TIME_SEC. Дополнительные сведения см. здесь: KB4038419. Применимо к: SQL Server 2016 (13.x) с пакетом обновления 2 (SP2), SQL Server 2017 (14.x) с накопительным пакетом обновления 3 и более поздних версий. Область: только глобальная. |
2430 | Включает альтернативную очистку класса блокировки. Дополнительные сведения см. здесь: KB2754301. Область: только глобальная. |
2446 | Вызывает SQL Server для создания фрагмента Showplan XML с ParameterRuntimeValue при использовании инфраструктуры профилирования упрощенной статистики выполнения запросов или при выполнении динамического административного sys.dm_exec_query_statistics_xml представления при устранении неполадок с длительными запросами.Применимо к: SQL Server 2017 (14.x) CU 31, SQL Server 2019 (15.x) CU 19 и SQL Server 2022 (16.x) и более поздних версий. Предупреждение: Флаг трассировки 2446 не предназначен для непрерывного включения в рабочей среде, а только для устранения неполадок с ограниченным временем. Использование этого флага трассировки создает дополнительные и, возможно, значительные затраты на ЦП и память, так как мы создадим фрагмент Showplan XML со сведениями о параметрах среды выполнения, независимо от того, вызывается ли sys.dm_exec_query_statistics_xml динамическое административное представление.Примечание: Начиная с SQL Server 2022 (16.x), для выполнения этой задачи на уровне базы данных см. параметр FORCE_SHOWPLAN_RUNTIME_PARAMETER_COLLECTION в статье ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL). Область: только глобальная. |
2451 | Включает эквивалент последнего действительного плана выполнения в sys.dm_exec_query_plan_stats .Применимо к: SQL Server 2019 (15.x) и более поздних версий. Примечание: Начиная с SQL Server 2019 (15.x) для выполнения этой задачи на уровне базы данных см. параметр LAST_QUERY_PLAN_STATS в статье ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL). Область: только глобальная. |
2453 | Позволяет табличной переменной вызывать перекомпиляцию после изменения достаточного числа строк. Дополнительные сведения см. здесь: KB2952444. Примечание. Тщательно протестируйте этот параметр, прежде чем развертывать его в рабочей среде. Область: глобальная, сеанс или запрос (QUERYTRACEON). |
2467 | Включает альтернативную политику распределения параллельных рабочих потоков на основе узлов, на которых есть минимальное число распределенных потоков. См. дополнительные сведения о параллельной обработке запросов. См. дополнительные сведения о настройке параметра конфигурации сервера максимального числа рабочих потоков. Примечание. Для использования этой альтернативной политики степень параллелизма для запросов должна быть соразмерной одному узлу. В противном случае используется политика распределения потоков по умолчанию. При использовании этого флага трассировки не рекомендуется выполнять запросы, определяющие степень параллелизма на основе большего числа планировщиков на одном узле, потому что они могут конфликтовать с запросами, определяющими степень параллелизма на основе фактического или меньшего числа планировщиков на одном узле. Примечание. Тщательно протестируйте этот параметр, прежде чем развертывать его в рабочей среде. Область: только глобальная. |
2469 | Позволяет заменить INSERT INTO ... SELECT на секционированный индекс columnstore. Дополнительные сведения см. здесь: KB3204769.Область: глобальная, сеанс или запрос (QUERYTRACEON). |
2528 | Отключает параллельную проверку объектов с помощью DBCC CHECKDB , DBCC CHECKFILEGROUP и DBCC CHECKTABLE . По умолчанию степень параллелизма определяется обработчиком запросов автоматически. Максимальная степень параллелизма настраивается так же, как и параллельные запросы. Дополнительные сведения см. в разделе Настройка параметра конфигурации сервера max degree of parallelism.Примечание. Должны быть включены параллельные проверки DBCC (по умолчанию). Обработчик запросов повторно оценивает и автоматически корректирует параллелизм в каждой таблице или пакете таблиц, которые проверяет DBCC CHECKDB .Типичное применение — когда системный администратор знает, что до завершения инструкции DBCC CHECKDB увеличится нагрузка на сервер, и решает вручную уменьшить или отключить параллелизм, чтобы увеличить параллелизм с рабочей нагрузкой других пользователей. Однако если параллельные проверки в DBCC CHECKDB отключены, операция может занимать больше времени.Примечание. Если DBCC CHECKDB выполняется при помощи параметра TABLOCK, а параллелизм отключен, таблицы могут дольше оставаться заблокированными.Примечание: Начиная с SQL Server 2014 (12.x) с пакетом обновления 2 (SP2) доступен параметр MAXDOP для переопределения параметра sp_configure конфигурации max degree of parallelism для инструкций DBCC.Область: глобальная или сеанс. |
2544 | Создает дамп памяти SQL Server в виде полного дампа (по умолчанию создается мини-дамп). Полный дамп — это полная копия памяти активных целевых процессов. Она включает состояние всех потоков, всю выделенную под процессы память и все загруженные модули. В результате размер полного дампа будет примерно равен объему памяти, используемому процессом SQL Server, который, в свою очередь, может занимать почти всю память ОЗУ системы. На больших серверах, выделенных для одного экземпляра SQL Server, это может означать файл, который составляет несколько сотен гигабайт или более. Внимание! Создание полного дампа памяти может приостановить процесс SQL Server на длительный период времени (от нескольких секунд до нескольких минут) и создать файл очень большого размера. Используйте этот флаг с осторожностью и только при необходимости. Дополнительные сведения см. в статье Использование программы Sqldumper.exe для создания файла дампа в SQL Server. Область: только глобальная. |
2549 | Выполняет команду DBCC CHECKDB с предположением, что каждый файл базы данных находится на уникальном диске, но расценивая разные физические файлы как один логический. Команда DBCC CHECKDB создает внутренний список страниц для чтения для каждого уникального диска для всех файлов базы данных. Эта логика определяет уникальные диски по букве диска в имени физического файла.Примечание. Не используйте этот флаг трассировки, если не уверены, что каждый файл находится на уникальном физическом диске. Примечание. Хотя этот флаг трассировки повышает производительность команд DBCC CHECKDB , направленных на использование параметра PHYSICAL_ONLY, некоторые пользователи могут не заметить улучшения. Хотя этот флаг трассировки улучшает использование ресурсов дискового ввода-вывода, базовая производительность дисковых ресурсов может ограничивать общую производительность команды DBCC CHECKDB . Дополнительные сведения см. здесь: KB2634571.Область: только глобальная. |
2551 | Создает дамп памяти SQL Server в виде отфильтрованного дампа (по умолчанию создается мини-дамп). При этом записывается процентная доля всей памяти, а крупные области ее структур, относящиеся к SQL Server, намеренно отфильтровываются и не сериализуются на диск, как не приносящие пользу для устранения неполадок. Обычно это страницы данных и индексов, некоторые внутренние кэши, например страницы данных выполняющейся в памяти OLTP и память пула журналов. В результате создается файл, который по размеру меньше, чем полный дамп памяти, но в основном сохраняет свою полезность и является предпочтительным в большинстве ситуаций, когда мини-дампов недостаточно. Дополнительные сведения см. в статье Использование программы Sqldumper.exe для создания файла дампа в SQL Server. Область: только глобальная. |
2562 | Выполняет команду DBCC CHECKDB в едином "пакете" независимо от количества индексов в базе данных. По умолчанию команда DBCC CHECKDB пытается свести к минимуму ресурсы базы данных tempdb , ограничивая количество индексов или "фактов", которые она создает, используя концепцию "пакетов". Однако этот флаг трассировки принудительно сводит всю обработку в один пакет.Одно из последствий использования этого флага трассировки — возможное увеличение необходимого пространства для tempdb . База данных tempdb может увеличиваться на 5 % или более по сравнению с пользовательской базой данных, которая обрабатывается с помощью команды DBCC CHECKDB .Примечание. Хотя этот флаг трассировки повышает производительность команд DBCC CHECKDB , направленных на использование параметра PHYSICAL_ONLY, некоторые пользователи могут не заметить улучшения. Хотя этот флаг трассировки улучшает использование ресурсов дискового ввода-вывода, базовая производительность дисковых ресурсов может ограничивать общую производительность команды DBCC CHECKDB . Дополнительные сведения см. здесь: KB2634571.Область: глобальная или сеанс. |
2566 | Выполняет команду DBCC CHECKDB без проверки чистоты данных, если не указан параметр DATA_PURITY .Примечание. Проверки целостности значений столбцов включены по умолчанию, и для них не требуется указывать параметр DATA_PURITY. Для баз данных, обновленных с предыдущих версий SQL Server, проверка значений столбцов по умолчанию не будет включена, пока в базе данных хотя бы один раз не будет выполнена без ошибок инструкция DBCC CHECKDB WITH DATA_PURITY . После этого инструкция DBCC CHECKDB проверяет целостность данных в столбцах по умолчанию. Дополнительные сведения см. в архивной версии статьи KB945770.Область: только глобальная. |
2592 | Включает разрешение символов в дампах стека при установке средств отладки для Windows. Например, для использования флага трассировки 3656 требуется включить флаг трассировки 2592. Предупреждение. Это флаг трассировки отладки. Он не предназначен для рабочих сред. Применимо к: SQL Server 2019 (15.x) и более поздних версий. Область: глобальная и сеанс. |
3023 | Включает параметр CHECKSUM по умолчанию для команды BACKUP. Примечание: Начиная с SQL Server 2014 (12.x), это поведение контролируется путем установки параметра конфигурации резервной контрольной суммы по умолчанию. Дополнительные сведения см. в разделах Резервное копирование контрольной суммы по умолчанию и Параметры конфигурации сервера (SQL Server). Область: глобальная и сеанс. |
3042 | Обходит алгоритм сжатия резервных копий по умолчанию, чтобы файл резервной копии рос только по мере необходимости, чтобы достичь окончательного размера. Этот флаг трассировки полезен для экономии пространства, так как выделяется только фактическое пространство, необходимое для резервной копии со сжатием. Но при этом его использование может немного снизить производительность (повысится продолжительность операции резервного копирования). Дополнительные сведения об алгоритме предварительного размещения см. в разделе Сжатие резервных копий (SQL Server). Область: только глобальная. |
3051 | Включает SQL Server ведение журнала резервного копирования на URL-адрес только для страничных BLOB-объектов в службе хранилища Azure. Ведение журнала записывает данные в определенный файл журнала ошибок. Дополнительные сведения см. в разделе Резервное копирование в SQL Server по URL-адресу — рекомендации и устранение неполадок. Область: только глобальная. |
3205 | По умолчанию инструкция DUMP или BACKUP использует аппаратное сжатие для накопителей на магнитной ленте, поддерживающих этот режим. С помощью этого флага трассировки можно отменить аппаратное сжатие для накопителей на магнитной ленте. Это полезно, если нужно обмениваться лентами с другими рабочими местами или накопителями на магнитной ленте. Область: глобальная или сеанс. |
3226 | По умолчанию каждая успешная операция резервного копирования добавляет запись в журнал ошибок служб SQL Server и в журнал системных событий. При частом выполнении резервного копирования журнала такие сообщения об успешном выполнении быстро накапливаются, в результате чего создаются огромные журналы ошибок, в которых трудно найти другие сообщения. С помощью этого флага трассировки можно подавить такие записи журнала. Это может быть полезным при частом выполнении резервного копирования журнала и в случае, если ни один из используемых скриптов не зависит от этих записей. Область: только глобальная. |
3427 | Включает исправление проблемы, когда многие последовательные транзакции вставляют данные во временные таблицы в SQL Server 2016 (13.x), где эта операция потребляет больше ресурсов ЦП, чем в SQL Server 2014 (12.x). Дополнительные сведения см. здесь: KB3216543. Применимо к: SQL Server 2016 (13.x) с пакетом обновления 1 (SP1) с накопительным пакетом обновления 2 (CU 2) SQL Server 2016 (13.x) с пакетом обновления 2 (SP2). Начиная с SQL Server 2016 (13.x) с пакетом обновления 2 (CU 3) и SQL Server 2017 (14.x), этот флаг трассировки не действует. Область: только глобальная. |
3428 | Поток Always On повтора на вторичном реплика иногда может блокироваться запросами T-SQL, что может привести к задержкам синхронизации. Этот флаг трассировки завершает такие блокирующие запросы, устанавливая время ожидания блокировки в 60 секунд. Дополнительные сведения о задержке потока повтора см. в разделах Поток повтора отстает из-за состязания за ресурсы и Устранение неполадок с созданием очереди REDO (проблемы с задержкой данных) в Always On читаемых вторичных реплик. Предупреждение: Убедитесь, что вы протестируете и понимаете этот параметр, прежде чем развертывать его в рабочей среде, так как запросы могут быть завершены. Область применения: SQL Server 2019 (15.x) Область: только глобальная. |
3459 | Отключает параллельные повторы действий. Дополнительные сведения см. в статьях KB3200975, KB4101554 и в этой записи блога (Модель повтора вторичной реплики группы доступности). Применимо к: SQL Server 2016 (13.x), SQL Server 2017 (14.x) и более поздних версий. Область: только глобальная. |
3468 | Отключает косвенные контрольные точки в tempdb .Применимо к: SQL Server 2016 (13.x) с пакетом обновления 1 (CU 5), SQL Server 2017 (14.x) с накопительным пакетом обновления 1 и более поздних версий. Область: только глобальная. |
3502 | Используется для отправки изменений состояния контрольных точек в журнал ошибок. Применимо к: SQL Server 2012 (11.x) и более поздних версий. Область: глобальная или сеанс. |
3605 | Перенаправляет сообщения трассировки в журнал ошибок SQL Server. Например, для использования флагов трассировки 205 и 8721 требуется включить флаг трассировки 3605. Предупреждение! Это флаг трассировки отладки. Он не должен быть постоянно включенным в рабочей среде. Область: глобальная или сеанс. |
3608 | Запрещает автоматический запуск SQL Server и восстановление любых баз данных, кроме базы данных master . Если инициируются действия, для которых требуется tempdb , то model восстанавливается и создается tempdb . Другие базы данных будут запущены и восстановлены при открытии. Могут не работать некоторые функции, например изоляция моментального снимка и изоляция зафиксированной операции чтения с моментальным снимком. Используйте для перемещения системных баз данных и перемещения пользовательских баз данных.Примечание. Не используйте при обычной работе. Область: только глобальная. |
3625 | Ограничивает объем сведений, возвращаемый пользователям, которые не являются членами предопределенной роли сервера sysadmin, маскируя параметры некоторых сообщений об ошибках символами '******' . Это поможет предотвратить раскрытие конфиденциальных сведений.Область: только глобальная. |
3656 | Включает разрешение символов в дампах стека при установке средств отладки для Windows. Предупреждение. Это флаг трассировки отладки. Он не предназначен для рабочих сред. Примечание: Начиная с SQL Server 2019 (15.x), флаг трассировки 2592 должен быть включен с флагом трассировки 3656, чтобы включить разрешение символов. Область: глобальная и сеанс. |
3880 | Отключите задачу таймера, которая проверяет состояние возобновляемого индекса. Область применения: SQL Server 2017 (14.x) и более поздних версий и предназначена для высокопроизводительных систем с высокопроизводительными рабочими нагрузками. Область: глобальная или сеанс. |
3924 | Активирует автоматическое удаление потерянных транзакций DTC с SPID=-2, что вызывает проблемы при использовании некоторых мониторов транзакций сторонних производителей. Дополнительные сведения см. в разделе KB4519668 и KB4511816. Область: только глобальная. |
3972 | Отключает функцию параллельных обновлений свободного места на страницах (PFS). Дополнительные сведения о параллельных обновления PFS см. в разделе Интеллектуальная производительность. Сведения о проблеме, для которой полезен этот флаг трассировки, см. в статье службы поддержки Майкрософт о неуправляемых дампах планировщика во время восстановления вторичной базы данных доступности с помощью моментального снимка базы данных KB5007794. Область: только глобальная. |
4022 | Отключает автоматическое выполнение хранимых процедур при запуске SQL Server. Дополнительные сведения об автоматическом выполнении хранимых процедур запуска см. в статье sp_procoption. Область: только глобальная. |
4043 | Исправлена ошибка, возникающая при применении политики безопасности во внешней таблице PolyBase и использовании Row-Level Security (RLS) в SQL Server версии 2019 (15.x). Сообщение об ошибке примерно следующее: "Предикаты безопасности можно добавлять только в пользовательские таблицы и привязанные к схеме представления". Дополнительные сведения см. в статье KB4552159. Область: глобальная или сеанс. |
4136 | Отключает сканирование параметров, если не используются OPTION(RECOMPILE) , WITH RECOMPILE и OPTIMIZE FOR <value> . Дополнительные сведения см. здесь: KB980653.Начиная с версии SQL Server 2016 (13.x) для выполнения этой задачи на уровне базы данных см. описание параметра PARAMETER_SNIFFING в разделе ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL). Для получения аналогичного результата на уровне запроса добавьте указание запроса OPTIMIZE FOR UNKNOWN. Указание OPTIMIZE FOR UNKNOWN не отключает механизм сканирования параметров, а обходит его, что дает тот же результат. Начиная с SQL Server 2016 (13.x) с пакетом обновления 1 (SP1), вторым вариантом для этого на уровне запроса является добавление USE HINT 'DISABLE_PARAMETER_SNIFFING' указания запроса вместо использования этого флага трассировки.Примечание. Тщательно протестируйте этот параметр, прежде чем развертывать его в рабочей среде. Область: глобальная или сеанс. |
4137 | Предписывает SQL Server создать план, используя минимальную избирательность, при оценке предикатов AND для фильтров с поправкой на частичную корреляцию вместо независимости в рамках модели оценки кратности (CE) оптимизатора запросов SQL Server 2012 (11.x) и более ранних версий (70). Дополнительные сведения см. здесь: KB2658214. Начиная с SQL Server 2016 (13.x) с пакетом обновления 1 (SP1), чтобы выполнить эту задачу на уровне запроса, добавьте USE HINT 'ASSUME_MIN_SELECTIVITY_FOR_FILTER_ESTIMATES' указание запроса вместо использования этого флага трассировки при использовании CE 70.Примечание. Тщательно протестируйте этот параметр, прежде чем развертывать его в рабочей среде. Примечание. Этот флаг трассировки не применяется CE версии 120 или более поздней версии. Вместо этого используйте флаг трассировки 9471. Область: глобальная, сеанс или запрос (QUERYTRACEON). |
4138 | Заставляет SQL Server создать план без использования корректировок цели строки с запросами, содержащими ключевые слова TOP, OPTION (FAST N), IN или EXISTS. Дополнительные сведения см. здесь: KB2667211. Начиная с SQL Server 2016 (13.x) с пакетом обновления 1 (SP1), чтобы выполнить эту задачу на уровне запроса, добавьте USE HINT 'DISABLE_OPTIMIZER_ROWGOAL' указание запроса вместо использования этого флага трассировки.Примечание. Тщательно протестируйте этот параметр, прежде чем развертывать его в рабочей среде. Область: глобальная, сеанс или запрос (QUERYTRACEON). |
4139 | Включает автоматическое создание быстрой статистики (поправка для гистограммы) независимо от состояния ключевого столбца. Если задан флаг трассировки 4139 независимо от состояния столбца начальной статистики (по возрастанию, по убыванию или неподвижно), гистограмма, используемая для оценки кратности, будет скорректирована во время компиляции запроса. Дополнительные сведения см. здесь: KB2952101. Начиная с SQL Server 2016 (13.x) с пакетом обновления 1 (SP1), чтобы выполнить эту задачу на уровне запроса, добавьте USE HINT 'ENABLE_HIST_AMENDMENT_FOR_ASC_KEYS' указание запроса вместо использования этого флага трассировки.Примечание. Тщательно протестируйте этот параметр, прежде чем развертывать его в рабочей среде. Примечание. Этот флаг трассировки не применяется в CE версии 70. Вместо этого используйте флаги трассировки 2389 и 2390. Область: глобальная, сеанс или запрос (QUERYTRACEON). |
4199 | Включает изменения в оптимизаторе запросов, выпущенные в накопительных пакетах обновления и пакетах обновления SQL Server. Изменения качества обслуживания, внесенные в предыдущие выпуски SQL Server, по умолчанию включены на последнем уровне совместимости базы данных в данном выпуске продукта без включения флага трассировки 4199. Дополнительные сведения см. здесь: KB974006. Изменения качества обслуживания по сравнению со всеми предыдущими уровнями совместимости базы данных: — Если включен флаг трассировки 4199, также включены изменения оптимизатора запросов по сравнению со всеми предыдущими уровнями совместимости базы данных. — Если флаг трассировки 4199 отключен или не задан, изменения оптимизатора запросов включаются, начиная с уровня совместимости 130. Для уровней совместимости ниже 130 изменения оптимизатора запросов отключены. Изменения качества обслуживания для версии DE после RTM: — Если включен флаг трассировки 4199, изменения оптимизатора запросов включены для версии ядра СУБД после RTM. — Если флаг трассировки 4199 отключен или не задан, изменения оптимизатора запросов отключены для версии ядра СУБД после rtm. Начиная с версии SQL Server 2016 (13.x) для выполнения этой задачи на уровне базы данных см. описание параметра QUERY_OPTIMIZER_HOTFIXES в разделе ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL). Начиная с SQL Server 2016 (13.x) с пакетом обновления 1 (SP1), чтобы выполнить эту задачу на уровне запроса, добавьте USE HINT 'ENABLE_QUERY_OPTIMIZER_HOTFIXES' указание запроса вместо использования этого флага трассировки.Важно: Исправления оптимизатора запросов, которые устраняют неправильные результаты или ошибки нарушения доступа, не включены флагом трассировки 4199. Эти исправления не считаются необязательными и включаются по умолчанию после установки пакета обновления. Область: глобальная, сеанс или запрос (QUERYTRACEON). |
4610 | Увеличивает размер хэш-таблицы, в которой хранятся записи кэша, в 8 раз. При использовании вместе с флагом трассировки 4618 увеличивает количество записей в хранилище кэша TokenAndPermUserStore до 8192. Дополнительные сведения об устранении неполадок с размером кэша TokenAndPermUserStore см. в статье Запросы выполняются дольше, когда размер кэша TokenAndPermUserStore увеличивается в SQL Server. Область: только глобальная. |
4616 | Делает метаданные уровня сервера видимыми ролям приложений. В SQL Server роль приложения не может получать доступ к метаданным за пределами собственной базы данных, так как роли приложений не связаны с участником уровня сервера. Это поведение было изменено по сравнению с предыдущими версиями SQL Server. Установка этого глобального флага отключает новые ограничения и позволяет ролям приложений получать доступ к метаданным уровня сервера. Область: только глобальная. |
4618 | Ограничивает число записей в хранилище кэша TokenAndPermUserStore до 1024. При использовании вместе с флагом трассировки 4610 увеличивает количество записей в хранилище кэша TokenAndPermUserStore до 8192. Дополнительные сведения об устранении неполадок с размером кэша TokenAndPermUserStore см. в статье Запросы выполняются дольше, когда размер кэша TokenAndPermUserStore увеличивается в SQL Server. Область: только глобальная. |
4621 | Ограничивает число записей в хранилище кэша TokenAndPermUserStore до числа, указанного пользователем в разделе реестра. Дополнительные сведения см. здесь: KB959823. Область: только глобальная. |
4631 | Отключает SHA2_256/AES256 для хэширования паролей, которые создают ключи шифрования. Начиная с SQL Server 2017 (14.x) вместо SHA1 используется SHA2. Это означает, что для расшифровки элементов установки SQL Server 2017 (14.x), зашифрованных SQL Server 2016 (13.x), как описано в разделе Создание идентичных симметричного ключа на двух серверах, может потребоваться выполнить дополнительные действия. Дополнительные сведения см. здесь: KB4053407. Применимо к: SQL Server 2017 (14.x) и более поздних версий. Область: только глобальная. |
5004 | Приостанавливает проверку шифрования TDE и принуждает рабочую роль сканирования шифрования выйти без выполнения действий. База данных продолжает находиться в состоянии шифрования (выполняется шифрование). Чтобы возобновить проверку повторного шифрования, отключите флаг трассировки 5004 и выполните инструкцию ALTER DATABASE <database_name> SET ENCRYPTION ON. Область: только глобальная. |
6408 | Обеспечивает видимость предполагаемого плана выполнения для просмотра плана удаленного запроса с вычислением pushdown PolyBase. Применимо к: SQL Server 2019 (15.x) и более поздних версий. Дополнительные сведения см. в разделе Как определить, произошел ли внешний pushdown. Область: глобальная, сеанс или запрос (QUERYTRACEON). |
6498 | Обеспечивает более одной компиляции больших запросов для получения доступа к большому шлюзу при наличии достаточного объема памяти. Этот флаг трассировки можно использовать с целью контроля использования памяти для компиляции входящих запросов, чтобы избежать ожидания компиляции больших параллельно выполняемых запросов. Он основан на значении 80 % от SQL Server целевой памяти и позволяет выполнять компиляцию одного большого запроса на 25 ГБ памяти. Дополнительные сведения см. здесь: KB3024815. Примечание: Начиная с SQL Server 2014 (12.x) с пакетом обновления 2 (SP2) и SQL Server 2016 (13.x), это поведение контролируется ядром СУБД, и флаг трассировки 6498 не имеет никакого влияния. Область: только глобальная. |
6527 | Отключается создание дампа памяти при первом возникновении исключения «Нехватка памяти» при интеграции со средой CLR. По умолчанию SQL Server создает небольшой дамп памяти при первом возникновении исключения "Нехватка памяти" в CLR. Режим работы флага трассировки следующий. — Если он используется в качестве флага трассировки запуска, дамп памяти никогда не создается. Однако если используются другие флаги трассировки, то дамп памяти может быть создан. — Если этот флаг трассировки включен на работающем сервере, дамп памяти не будет автоматически создаваться с этого момента. Однако если дамп памяти уже был создан из-за исключения нехватки памяти в среде CLR, этот флаг трассировки не действует. Область: только глобальная. |
6532 | Включает улучшение производительности операций запросов с пространственными типами данных в SQL Server 2012 (11.x) и SQL Server 2014 (12.x). Повышение производительности зависит от конфигурации, типов запросов и объектов. Дополнительные сведения см. здесь: KB3107399. Примечание: Начиная с SQL Server 2016 (13.x), это поведение контролируется ядром СУБД, и флаг трассировки 6532 не оказывает никакого влияния. Область: глобальная и сеанс. |
6533 | Включает улучшение производительности операций запросов с пространственными типами данных в SQL Server 2012 (11.x) и SQL Server 2014 (12.x). Повышение производительности зависит от конфигурации, типов запросов и объектов. Дополнительные сведения см. здесь: KB3107399. Примечание: Начиная с SQL Server 2016 (13.x) это поведение контролируется ядром СУБД, и флаг трассировки 6533 не оказывает никакого влияния. Область: глобальная и сеанс. |
6534 | Обеспечивает улучшенную производительность операций запросов с пространственными типами данных, начиная с SQL Server 2012 (11.x). Повышение производительности зависит от конфигурации, типов запросов и объектов. Дополнительные сведения см. здесь: KB3107399. Область: только глобальная. |
6545 | Активирует режим строгой безопасности в среде CLR. Дополнительные сведения см. здесь: KB4018930. Применимо к: SQL Server 2012 (11.x) с пакетом обновления 3 (CU 10), SQL Server 2014 (12.x) с пакетом обновления 2 (SP6), SQL Server 2016 (13.x) RTM CU 7, SQL Server 2016 (13.x) с пакетом обновления 1 (CU 4) и более поздних версий. Начиная с SQL Server 2017 (14.x) эта функция включена по умолчанию, и флаг трассировки 6545 не действует. Область: только глобальная. |
6559 | Активирует исправление, изменяющее логику потоковой модели среды CLR по умолчанию. Дополнительные сведения см. здесь: KB4517771. Применимо к: SQL Server 2016 (13.x) с пакетом обновления 2 (CU 10), SQL Server 2017 (14.x) CU 18, SQL Server 2019 (15.x) CU 1 и более поздних версий. Область: только глобальная. |
7314 | Обеспечивает обработку значений NUMBER с неизвестной точностью или масштабом как двойных значений в поставщике OLE DB. Дополнительные сведения см. здесь: KB3051993. Область: глобальная и сеанс. |
7412 | Включает инфраструктуру профилирования статистики выполнения упрощенных запросов. Дополнительные сведения см. здесь: KB3170113. Область применения: SQL Server 2016 (13.x) с пакетом обновления 1 (SP1) и более поздних версий. Начиная с SQL Server 2019 (15.x) этот флаг трассировки не действует, так как упрощенное профилирование включено по умолчанию. Область: только глобальная. |
7470 | Включает дополнительные вычисления для временно предоставляемых буферов памяти, необходимых для операций сортировки. Дополнительные сведения см. здесь: KB3088480. Применимо к: SQL Server 2012 (11.x) с пакетом обновления 2 (SP2) CU 8, SQL Server 2014 (12.x) RTM CU 10, SQL Server 2014 (12.x) с пакетом обновления 1 CU 3 и более поздних версий. Предупреждение: Флаг трассировки 7470 повышает требования к памяти для запросов с помощью операторов сортировки и может повлиять на доступность памяти для других параллельных запросов. Область: глобальная, сеанс или запрос (QUERYTRACEON). |
7471 | Включает выполнение нескольких инструкций UPDATE STATISTICS для разных статистик в одной таблице одновременно. Дополнительные сведения см. здесь: KB3156157. Область применения: SQL Server 2014 (12.x) с пакетом обновления 1 (SP1) и более поздних версий. Область: только глобальная. |
7745 | Запрещает хранилищу запросов записывать данные на диск при завершении работы базы данных. Примечание: Использование этого флага трассировки может привести к потере хранилище запросов данных, которые ранее не были сброшены на диск в случае завершения работы. В случае завершения работы SQL Server используйте вместо этого флага трассировки команду SHUTDOWN WITH NOWAIT, чтобы запустить немедленное завершение работы. Область: только глобальная. |
7752 | Включает асинхронную загрузку хранилища запросов. Примечание. Используйте этот флаг трассировки, если у SQL Server большое число ожиданий QDS_LOADDB, связанных с синхронной загрузкой хранилища запросов (реакция по умолчанию для восстановления базы данных). Примечание: Начиная с SQL Server 2019 (15.x), это поведение управляется ядром СУБД, а флаг трассировки 7752 не влияет. Область: только глобальная. |
7806 | Включает применение выделенных административных соединений (DAC) в SQL Server Express. По умолчанию ресурсы приложения уровня данных не зарезервированы в SQL Server Express. Дополнительные сведения см. в разделе Диагностическое соединение для администраторов баз данных. Область: только глобальная. |
8011 | Отключает кольцевой буфер для монитора ресурсов. Диагностические данные в этом кольцевом буфере можно использовать для диагностики условий нехватки памяти. Таким образом, если используется этот флаг трассировки, значительно сокращается объем доступных данных для диагностики проблем производительности и функциональных проблем SQL Server. Флаг трассировки 8011 всегда применяется на сервере и имеет глобальные область. Флаг трассировки 8011 можно включить при запуске или в сеансе пользователя. Область: только глобальная. |
8012 | Отключает кольцевой буфер для планировщиков. SQL Server записывает событие в кольцевой буфер расписания каждый раз, когда происходит одно из следующих событий. — Планировщик переключает контекст на другой рабочий процесс. — Рабочая роль приостанавливается. — Рабочая роль возобновляется. — Рабочая роль переходит в режим с вытеснением или без него. Диагностические данные в этом кольцевом буфере можно использовать для анализа проблем с расписанием. Например, сведения в этом кольцевом буфере можно использовать для устранения неполадок, когда SQL Server перестает отвечать на запросы. Флаг трассировки 8012 отключает запись событий для планировщиков. Флаг трассировки 8012 можно включить только при запуске. Предупреждение! Если используется этот флаг трассировки, значительно сокращается объем доступных данных для диагностики проблем производительности и функциональных проблем SQL Server. Область: только глобальная. |
8015 | Отключите автоматическое обнаружение и настройку NUMA. Дополнительные сведения см. здесь: KB2813214. Область: только глобальная. |
8018 | Отключает кольцевой буфер исключений. Кольцевой буфер исключений записывает последние 256 исключений, возникающих на узле. Каждая запись содержит некоторую информацию об ошибке и трассировку стека. Запись добавляется в кольцевой буфер при возникновении исключения. Флаг трассировки 8018 отключает создание кольцевого буфера, и сведения об исключении не записываются. Флаг трассировки 8019 отключает сбор стека во время создания записи. Предупреждение! Если используется этот флаг трассировки, значительно сокращается объем доступных данных для диагностики проблем производительности и функциональных проблем SQL Server. Область: только глобальная. |
8019 | Отключает сбор стеков для кольцевого буфера исключений. Флаг трассировки 8019 не действует, если включен флаг трассировки 8018. Предупреждение! Если используется этот флаг трассировки, значительно сокращается объем доступных данных для диагностики проблем производительности и функциональных проблем SQL Server. Область: только глобальная. |
8020 | Отключает мониторинг рабочего набора. SQL Server использует размер рабочего набора, когда получает глобальные сигналы состояния памяти от операционной системы. Флаг трассировки 8020 не учитывает размер памяти рабочего набора, когда SQL Server интерпретирует глобальные сигналы состояния памяти. При неправильном использовании этого флага трассировки может иметь место активная подкачка, а производительность может быть снижена. Поэтому перед включением флага трассировки 8020 обратитесь к служба поддержки Майкрософт. Флаг трассировки 8020 можно включить только при запуске. Область: только глобальная. |
8032 | Восстанавливает параметры предела кэша до значения в версии SQL Server 2005 (9.x), что обычно позволяет увеличить размер кэша. Используйте этот параметр, если часто используемые повторно записи кэша не помещаются в кэш и параметру конфигурации сервера Оптимизировать для нерегламентированной рабочей нагрузки не удалось разрешить эту проблему с помощью кэша планов. Предупреждение: Флаг трассировки 8032 может привести к снижению производительности, если большие кэши делают меньше памяти доступными для других потребителей памяти, таких как буферный пул. Область: только глобальная. |
8048 | Преобразует объекты памяти, секционированные по NUMA, в секционированные по ЦП. Дополнительные сведения см. здесь: KB2809338. Примечание: Начиная с SQL Server 2014 (12.x) с пакетом обновления 2 (SP2) и SQL Server 2016 (13.x), это поведение является динамическим и управляется ядром СУБД. Область: только глобальная. |
8075 | Снижает степень фрагментации виртуального адресного пространства при получении ошибок выделения страниц в памяти в 64-разрядной среде SQL Server 2012 (11.x) или SQL Server 2014 (12.x). Дополнительные сведения см. здесь: KB3074434. Применимо к: SQL Server 2012 (11.x), SQL Server 2014 (12.x) RTM CU 10 и SQL Server 2014 (12.x) с пакетом обновления 1 CU 3. Начиная с SQL Server 2016 (13.x) это поведение управляется ядром СУБД, а флаг трассировки 8075 не оказывает никакого влияния. Область: только глобальная. |
8079 | Позволяет SQL Server 2014 (12.x) с пакетом обновления 2 (SP2) запрашивать структуру оборудования и автоматически настраивать Soft-NUMA в системах, сообщая о 8 или более ЦП на узел NUMA. Автоматическая реализация Soft-NUMA учитывает многопоточность (потоки/логические процессоры). Секционирование и создание дополнительных узлов позволяет масштабировать фоновую обработку за счет увеличения числа прослушивателей и масштаба вычислений, а также расширения возможностей сети и шифрования. Область применения: SQL Server 2014 (12.x) с пакетом обновления 2 (SP2). Начиная с SQL Server 2016 (13.x), это поведение контролируется компонентом Компонент Database Engine, и флаг трассировки 8079 не имеет никакого влияния. Область: только глобальная. |
8089 | В SQL Server 2017 (14.x) CU 16 можно включить фильтрацию растровых изображений для уменьшения размера отфильтрованных дампов памяти. SQL Server выделяет растровое изображение, которое отслеживает страницы памяти, исключаемые из фильтруемого дампа. Sqldumper.exe считывает растровое изображение и отфильтровывает страницы без считывания других метаданных диспетчера памяти. Применимо к: только SQL Server 2017 (14.x) CU 16–CU 19. Начиная с SQL Server 2017 (14.x) CU 20 фильтрация растровых изображений включена по умолчанию. Флаг трассировки 8089 больше не будет применяться и будет игнорироваться, если он включен. Фильтрацию растровых изображений можно отключить с помощью флага трассировки 8095. Дополнительные сведения см. здесь: KB4488943. Область: только глобальная. |
8095 | Отключает фильтрацию растровых изображений для фильтруемых дампов памяти. SQL Server выделяет растровое изображение, которое отслеживает страницы памяти, исключаемые из фильтруемого дампа. Sqldumper.exe считывает растровое изображение и отфильтровывает страницы без считывания других метаданных диспетчера памяти. Область применения: сборки, в которых фильтрация по растровым рисункам включена по умолчанию: SQL Server 2016 (13.x) CU 13 и более поздних версий, SQL Server 2017 (14.x) с накопительным пакетом обновления 20 и более поздних версий и SQL Server 2019 (15.x). Область: только глобальная. |
8096 | Отключите проверка локальности NUMA для фиксаций памяти. Применимо к: SQL Server 2019 (15.x) и более поздних версий. Области: Глобального. |
8099 | Активирует исправление конфликтов спин-блокировок для высокопроизводительных систем SQL Server 2019 (15.x), одновременно обслуживающих множество пользователей. Применимо к: только SQL Server 2019 (15.x) CU 2 и CU 3. Начиная с SQL Server 2019 (15.x) CU 4 это поведение включено по умолчанию. Дополнительные сведения о состязании за спин-блокировку см. в статьях Флаг трассировки 8101 и KB4538688. Область применения: SQL Server 2019 (15.x) Область: только глобальная. |
8101 | Устранена высокая загрузка ЦП на современном оборудовании, таком как процессоры Intel Skylake, с большим количеством ЦП и большим количеством одновременных пользователей. Сведения о диагностике конфликтов спин-блокировок см. в техническом документе Диагностика и разрешение конфликтов за спин-блокировку в SQL Server. Применимо к: только SQL Server 2019 (15.x), начиная с CU 8, с дополнительными улучшениями, представленными в накопительных пакетах обновления 14 и CU 16. Дополнительные сведения см. здесь: KB4538688. Область применения: SQL Server 2019 (15.x) Область: только глобальная. |
8121 | Устранена проблема с низким объемом памяти на уровне системы, возникающая, когда SQL Server фиксирует превышение максимального объема памяти сервера в модели памяти с включенным параметром "Блокировка страниц в памяти". Этот флаг трассировки выделяет память, необходимую системным потоку Монитора ресурсов для сокращения потребления памяти SQL Server. Сведения об исправлении см. в статье KB5008996. Область: только глобальная. |
8207 | Включает отдельные обновления для репликации транзакций и CDC. Обновления для подписчиков можно реплицировать как пары инструкций DELETE и INSERT. Это может не удовлетворять бизнес-правилам, например для срабатывания триггера UPDATE. При использовании флага трассировки 8207 обновление уникального столбца, затрагивающего только одну строку (одноэлементное обновление), реплицируется как ОБНОВЛЕНИЕ, а не как пара DELETE или INSERT. Если обновление затрагивает столбец, для которого существует уникальное ограничение, или если обновление затрагивает несколько строк, то обновление будет реплицировано как пара инструкций DELETE или INSERT. Дополнительные сведения см. в архивной версии статьи KB302341. Область: только глобальная. |
8284 | Устранена проблема очистки вручную, из-за которой повторяющиеся эскалации блокировок в таблицах вызывают состязание и медленную очистку метаданных отслеживания изменений с истекшим сроком действия. Примечание: Этот флаг трассировки применяется к SQL Server 2019 (15.x) CU 21 и более поздних версий. Область: только глобальная. |
8286 | При принудительном выполнении запроса очистки используется FORCE ORDER указание для повышения производительности. Для использования FORCESEEK указания можно использовать с TF 8287. Дополнительные сведения см. в статье KB5022375.Применимо к: SQL Server 2022 (16.x) CU 1 и более поздних версий. Область: только глобальная. |
8287 | При принудительном выполнении запроса очистки используется FORCESEEK указание для повышения производительности. Для использования FORCE ORDER указания можно использовать с TF 8286. Дополнительные сведения см. в статье KB5022375.Применимо к: SQL Server 2022 (16.x) CU 1 и более поздних версий. Область: только глобальная. |
8558 | Включает исправление, чтобы вы не наблюдали пограничные случаи, когда при включенном уровне изоляции RCSI транзакция иногда не может распознать последние данные из таблиц, которые были изменены с помощью транзакций DTC, даже после успешного выполнения xa_commit в течение короткого промежутка времени. Примечание. Тщательно протестируйте этот параметр, прежде чем развертывать его в рабочей среде. Применимо к: SQL Server 2022 (16.x) и более поздних версий. Область: только глобальная. |
8721 | Сообщается в журнал ошибок при выполнении статистики автоматического обновления. Дополнительные сведения см. в архивной версии статьи KB195565. Примечание: Для этого флага трассировки требуется включить флаг трассировки 3605 . Область: только глобальная. |
8744 | Отключите предварительную выборку для оператора Вложенные циклы . Предупреждение! Неправильное использование этого флага трассировки может привести к дополнительным физическим операциям чтения, когда SQL Server выполняет планы, содержащие оператор вложенных циклов. Область: глобальная и сеанс. |
8790 | Заставляет SQL Server использовать широкий план запросов при выполнении инструкции UPDATE для обновления индексов в таблице. При выполнении обновления для столбца кластеризованного индекса SQL Server обновляет не только сам кластеризованный индекс, но и все некластеризованные индексы, так как некластеризованные индексы содержат ключ индекса кластера. Чтобы оптимизировать производительность и уменьшить количество случайных операций ввода-вывода, SQL Server может сортировать все данные некластеризованного индекса в памяти, а затем обновить все индексы по порядку. Это называется расширенным планом (также называется Per-Index Update), и его можно принудительно использовать с помощью этого флага трассировки. Области: Глобальный, сеанс или запрос (QUERYTRACEON). |
8902 | Отключите заблокированные страницы для операций ввода-вывода для высокопроизводительных систем с высокопроизводительными рабочими нагрузками. Применимо к: SQL Server 2019 (15.x) и более поздних версий. Области: Глобального. |
8904 | Включает исправление для устранения параллельного сбоя повтора на вторичном реплика. Дополнительные сведения см. в статье KB5004649. Применимо к: только SQL Server 2019 (15.x), начиная с накопительного пакета обновления 12. Область применения: SQL Server 2019 (15.x) Область: только глобальная. |
9024 | Преобразует объект памяти пула глобального журнала в объект памяти, секционированный по узлу NUMA. Дополнительные сведения см. здесь: KB2809338. Примечание: Начиная с SQL Server 2012 (11.x) с пакетом обновления 3 (SP3) и SQL Server 2014 (12.x) с пакетом обновления 1 (SP1) это поведение контролируется ядром СУБД, и флаг трассировки 9024 не оказывает никакого влияния. Область: только глобальная. |
9109 | Отключает запуск функции уведомления о запросах. Дополнительные сведения см. в статье "Восстановление может завершиться сбоем или занять много времени, если в базе данных используется уведомление о запросе". Предупреждение. Используйте этот флаг трассировки с осторожностью. Этот флаг трассировки может быть полезен в ограниченном наборе сценариев, в основном для устранения неполадок или для изоляции проблемы. Область: глобальная и сеанс. |
9347 | Отключает пакетный режим для оператора sort. SQL Server 2016 (13.x); вводит новый оператор sort в пакетном режиме, который повышает производительность для многих аналитических запросов. Дополнительные сведения см. здесь: KB3172787. Область: глобальная, сеанс или запрос (QUERYTRACEON). |
9348 | Позволяет использовать оценки кратности оптимизатора запросов для принятия решения о том, следует ли инициировать BULK INSERT для кластеризованного индекса columnstore. Если предполагаемое количество строк для вставки меньше 102 400, то Компонент Database Engine использует BULK INSERT. Если предполагаемое количество строк превышает 102 400, инициируется BULK INSERT. Дополнительные сведения см. здесь: KB2998301. Область: глобальная, сеанс или запрос (QUERYTRACEON). |
9349 | Отключает пакетный режим для оператора top N sort. SQL Server 2016 (13.x); вводит новый оператор top sort в пакетном режиме, который повышает производительность для многих аналитических запросов. Область: глобальная, сеанс или запрос (QUERYTRACEON). |
9358 | Отключает пакетный режим для оператора sort. Дополнительные сведения см. здесь: KB3171555. Примечание: Начиная с SQL Server 2017 (14.x) это поведение включено по умолчанию, и этот флаг трассировки не действует. Область: глобальная, сеанс или запрос (QUERYTRACEON). |
9389 | Включает дополнительный динамический временно предоставляемый буфер памяти для операторов пакетного режима. Если запрос не получает всю необходимую память, он переносит данные в , что приводит к tempdb дополнительным ввода-выводам и потенциально влияет на производительность запроса. Если включен флаг трассировки для динамического временно предоставляемого буфера памяти, оператор пакетного режима может запросить дополнительную память и избежать переноса данных в tempdb , если дополнительная память доступна. Дополнительные сведения см. в разделе Последствия изменения минимального объема памяти на запрос в руководстве по архитектуре управления памятью.Область: глобальная или сеанс. |
9398 | Отключает оператор Adaptive Join, который позволяет отложить выбор метода хэш-соединения или соединения вложенными циклами до завершения сканирования первых входных данных, как было представлено в SQL Server 2017 (14.x). Дополнительные сведения см. здесь: KB4099126. Примечание. Тщательно протестируйте этот параметр, прежде чем развертывать его в рабочей среде. Область: глобальная, сеанс или запрос (QUERYTRACEON). |
9410 | Включает исправление не по умолчанию для запроса, использующего статистический оператор хеша и временные записи. Включение этого флага трассировки увеличивает объем доступной памяти для различных хэш-операций. Дополнительные сведения см. здесь: KB3167159. Примечание. Тщательно протестируйте этот параметр, прежде чем развертывать его в рабочей среде. Область: глобальная, сеанс или запрос (QUERYTRACEON). |
9453 | Отключает выполнение в пакетном режиме. Дополнительные сведения см. здесь: KB4016902. Примечание. Тщательно протестируйте этот параметр, прежде чем развертывать его в рабочей среде. Область: глобальная, сеанс или запрос (QUERYTRACEON). |
9471 | Побуждает SQL Server создать план с минимальной избирательностью для однотабличных фильтров в модели оценки кратности оптимизатора запросов версий SQL Server 2014 (12.x) и выше. Начиная с SQL Server 2016 (13.x) с пакетом обновления 1 (SP1) для этого на уровне запроса добавьте USE HINT 'ASSUME_MIN_SELECTIVITY_FOR_FILTER_ESTIMATES' указание запроса вместо использования этого флага трассировки.Примечание. Тщательно протестируйте этот параметр, прежде чем развертывать его в рабочей среде. Примечание. Этот флаг трассировки не применяется в CE версии 70. Вместо этого используйте флаг трассировки 4137. Область: глобальная, сеанс или запрос (QUERYTRACEON). |
9476 | Побуждает SQL Server создать план с допущением простого вложения вместо допущения базового вложения по умолчанию в модели оценки кратности оптимизатора запросов версий SQL Server 2014 (12.x) и выше. Дополнительные сведения об этом вы найдете в статье KB3189675. Начиная с SQL Server 2016 (13.x) с пакетом обновления 1 (SP1) для этого на уровне запроса добавьте USE HINT 'ASSUME_JOIN_PREDICATE_DEPENDS_ON_FILTERS' указание запроса вместо использования этого флага трассировки.Примечание. Тщательно протестируйте этот параметр, прежде чем развертывать его в рабочей среде. Область: глобальная, сеанс или запрос (QUERYTRACEON). |
9481 | Задает модель оценки кратности оптимизатора запросов (CE) SQL Server 2012 (11.x) и более ранних версий (версия 70), независимо от уровня совместимости базы данных. Дополнительные сведения см. здесь: KB2801413. Начиная с версии SQL Server 2016 (13.x) для выполнения этой задачи на уровне базы данных в соответствии см. описание параметра LEGACY_CARDINALITY_ESTIMATION в разделе ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL). Начиная с SQL Server 2016 (13.x) с пакетом обновления 1 (SP1) для этого на уровне запроса добавьте USE HINT 'FORCE_LEGACY_CARDINALITY_ESTIMATION' указание запроса вместо использования этого флага трассировки.Область: глобальная, сеанс или запрос (QUERYTRACEON). |
9485 | Отключает разрешение SELECT для DBCC SHOW_STATISTICS . Дополнительные сведения см. здесь: KB2683304.Область: только глобальная. |
9488 | При использовании модели оценки кратности оптимизатора запросов SQL Server 2012 (11.x) и более поздних версий присваивает фиксированной оценке для функций с табличным значением значение 1 (соответствует значению по умолчанию в SQL Server модели оценки кратности оптимизатора запросов SQL Server 2012 (11.x) и более поздних версий. Область: глобальная, сеанс или запрос (QUERYTRACEON). |
9495 | Отключает параллелизм во время вставки для операций INSERT...SELECT и применяется к пользовательским и временным таблицам. Дополнительные сведения см. здесь: KB3180087. Область: глобальная или сеанс. |
9567 | Включает сжатие потока данных для групп доступности AlwaysOn во время автоматического заполнения. Во время автоматического заполнения сжатие может значительно сократить время передачи и увеличит загрузку ЦП. Дополнительные сведения см. в разделах Автоматическая инициализация группы доступности AlwaysOn и Настройка сжатия для группы доступности. Область: глобальная или сеанс. |
9571 | Отключает автоматическое первоначальное заполнение пути базы данных по умолчанию для групп доступности. Дополнительные сведения см. в статье Разметка диска. Область: глобальная или сеанс. |
9576 | Отключает расширенный сбор ошибок для отработки отказа группы доступности, появившиеся в SQL Server 2016 (13.x) с пакетом обновления 1 (CU 10), SQL Server 2016 (13.x) с пакетом обновления 2 (SP2) и SQL Server 2017 (14.x) с накопительным пакетом обновления 9. Дополнительные сведения см. в статье Группы доступности SQL Server — улучшенная отработка отказа уровня базы данных. Область: только глобальная. |
9591 | Отключает сжатие блока журнала в группах доступности AlwaysOn. Сжатие блока журнала является реакцией по умолчанию, используемой с синхронными и асинхронными репликами в SQL Server 2012 (11.x) и SQL Server 2014 (12.x). В SQL Server 2016 (13.x); сжатие используется только с асинхронной репликой. Область: глобальная или сеанс. |
9592 | Включает сжатие потока журналов для синхронных групп доступности. В синхронных группах доступности эта функция отключена по умолчанию, поскольку сжатие приводит к увеличению задержки. Дополнительные сведения см. в разделе Tune compression for availability group(Настройка сжатия для группы доступности). Область: глобальная или сеанс. |
9708 | Включает сбор метрик публикации событий для расширенных сеансов событий. Дополнительные сведения см. в разделе sys.dm_xe_session_events. Применимо к: SQL Server 2022 (16.x) и более поздних версий. Область: только глобальная. |
9810 | Отключает In-Memory подсистеме OLTP восстановление памяти локального хранилища потока (TLS). В SQL Server 2019 (15.x) и более ранних версиях по умолчанию не освобождается память TLS. В SQL Server 2022 (16.x) была введена новая оптимизация памяти, которая приводит к тому, что подсистема In-Memory OLTP освобождает память TLS и снижает вероятность проблем с нехваткой памяти. Этот флаг трассировки возвращается к поведению до SQL Server 2022 (16.x). Применимо к: SQL Server 2022 (16.x) и более поздних версий. Область: только глобальная. |
9929 | Сокращает файлы контрольных точек в памяти до 1 МБ для каждого файла. Дополнительные сведения см. здесь: KB3147012. Область: только глобальная. |
9939 | Включает параллельные планы и параллельное сканирование таблиц, оптимизированных для памяти, и табличных переменных в операциях DML, которые ссылаются на таблицы, оптимизированные для памяти, или табличные переменные, при условии, что они не являются целевым объектом операции DML в SQL Server 2016 (13.x). Дополнительные сведения см. здесь: KB4013877. Примечание: Флаг трассировки 9939 не требуется, если также явно включен флаг трассировки 4199. Область: глобальная, сеанс или запрос (QUERYTRACEON). |
9944 | Включает исправление не по умолчанию для медленного восстановления базы данных, когда база данных имеет большое количество таблиц, оптимизированных для операций в памяти, или типов таблиц, оптимизированных для операций в памяти, и может наблюдаться блокировка с типами ожидания PREMPTIVE_OS_FINDFILE или PREEMPTIVE_OS_CREATEDIRECTORY. Дополнительные сведения см. в статьях KB4090789 и KB4052338. Область: только глобальная. |
9953 | Повторно использует скрытые планировщики, используемые таблицами, оптимизированными для памяти. Применимо к: SQL Server 2019 (15.x) CU 20 и более поздних версий, а также SQL Server 2022 (16.x) CU 3 и более поздних версий. Область: только глобальная. |
10054 | Отключает правило оптимизатора запросов SQL Server, которое разделяет вложенные запросы в предикатах ИЛИ на внешние соединения. Применимо к: SQL Server 2019 (15.x) и более поздних версий. Примечание. Тщательно протестируйте этот параметр, прежде чем развертывать его в рабочей среде. Область: глобальная, сеанс или запрос (QUERYTRACEON). |
10204 | Отключает слияние и повторное сжатие во время реорганизации индекса columnstore. В SQL Server 2016 (13.x); при реорганизации индекса columnstore можно использовать новую функцию, которая автоматически объединяет малые сжатые группы строк в большие сжатые группы строк, а также повторно сжимает группы строк с большим количеством удаленных строк. Примечание: Флаг трассировки 10204 не применяется к индексам columnstore, созданным в оптимизированных для памяти таблицах. Область: глобальная или сеанс. |
10207 | Разрешает сканирование кластеризованного индекса columnstore (CCI) для пропуска поврежденных сегментов или метаданных, что позволяет получить данные из поврежденного CCI. Дополнительные сведения см. здесь: KB3067257. Область: глобальная или сеанс. |
10316 | Включает создание дополнительных индексов во внутренних промежуточных темпоральных таблицах, оптимизированных для памяти, помимо индекса по умолчанию. Если у вас есть определенный шаблон запроса, включающий столбцы, к которым не относится индекс по умолчанию, вы можете добавить дополнительные индексы. Примечание. Темпоральные таблицы с системным управлением версиями для таблиц, оптимизированных для памяти, призваны обеспечить высокую скорость обработки транзакций. Создание дополнительных индексов может привести к издержкам для операций DML, которые обновляют или удаляют строки в текущей таблице. Используя дополнительные индексы, постарайтесь найти баланс между производительностью темпоральных запросов и дополнительными временными затратами DML. Область: глобальная или сеанс. |
10460 | Приводит к тому, что функция Stretch Database SQL Server подготавливает растянутую таблицу на уровне служб Azure SQL Базы данных с гипермасштабированием. Применимо к: SQL Server 2017 (14.x) CU 31, SQL Server 2019 (15.x) CU 18 и SQL Server 2022 (16.x) и более поздних версий. Начиная с SQL Server 2017 (14.x) CU 31, SQL Server 2019 (15.x) CU 18 и SQL Server 2022 (16.x) поведение функции Stretch Database по умолчанию будет подготавливать растянутую таблицу на уровне служб Azure SQL Database Standard (S3). Дополнительные сведения см. в статье KB5018050. Область: только глобальная. |
11023 | Отключает использование последней сохраненной частоты выборки для всех последующих обновлений статистики, где частота выборки не указана явно в инструкции UPDATE STATISTICS. Дополнительные сведения см. здесь: KB4039284. Область: только глобальная. |
11024 | Включает запуск автоматического обновления статистики, когда число изменений любого раздела превышает локальное пороговое значение. Дополнительные сведения см. здесь: KB4041811. Применимо к: SQL Server 2016 (13.x) с пакетом обновления 2 (SP2), SQL Server 2017 (14.x) с накопительным пакетом обновления 3 и более поздних версий. Область: только глобальная. |
11047 | Применяет время ожидания по умолчанию, заданное query wait (s) , или конфигурацию Resource Governor REQUEST_MEMORY_GRANT_TIMEOUT_SEC для операций построения индекса columnstore. Дополнительные сведения см. здесь: KB4480641.Применимо к: SQL Server 2016 (13.x) с пакетом обновления 2 (SP2) CU 5, SQL Server 2017 (14.x) CU 14 и более поздних версий. Область: только глобальная. |
11064 | Повышает масштабируемость операций загрузки данных в индексы columnstore путем оптимизации распределения памяти между операторами SELECT и INSERT . Дополнительные сведения о загрузке данных в индекс columnstore см. в разделе Индексы columnstore. Руководство по загрузке данных.Применимо к: SQL Server 2019 (15.x) и более поздних версий. Область: только глобальная. |
11068 | Использует настроенное значение максимальной степени параллелизма (MAXDOP) сервера, базы данных или пула ресурсов для операций вставки индекса columnstore. Дополнительные сведения об изменении степени параллелизма см. в статье Руководство по архитектуре обработки запросов. Важно: Этот флаг трассировки действует, только если включен флаг трассировки 11064. Внимание! Используйте этот флаг трассировки, если высокая скорость загрузки данных предпочтительнее, чем качество обслуживания сегмента columnstore. Например, использование этого флага трассировки при загрузке 1 048 577 строк в columnstore может привести к образованию нескольких сжатых групп строк, если операция вставки выполняется в параллельном режиме. Без этого флага трассировки операция вставки приведет к появлению одной сжатой группы строк. Применимо к: SQL Server 2019 (15.x) и более поздних версий. Область: только глобальная. |
11561 | Отключает проверку подлинности Azure Active Directory (Azure AD) для репликации. Примечание: Этот флаг трассировки применяется к SQL Server 2022 (16.x) CU 6 и более поздних версий. Область: глобальная или сеанс. |
11631 | И фоноваяALTER INDEX ... REORGANIZE задача слияния очищают удаленные строки в группе строк индекса columnstore, только если из этой группы строк было удалено определенное пороговое значение. Пороговое количество по умолчанию — 10 % от максимального количества строк (1 000 000), или 100 000 строк.Этот флаг трассировки изменяет пороговое значение на 10 % от общего числа текущих строк в группе строк columnstore. Например, если группа строк содержит 20 000 строк, пороговое значение равно 2000 удаленных строк, прежде чем эта группа строк будет рассматриваться для очистки. Дополнительные сведения см. здесь: KB5000895. Применимо к: SQL Server 2019 (15.x) CU 9 и более поздних версий. Область: только глобальная. |
11634 | И фоноваяALTER INDEX ... REORGANIZE задача слияния очищают удаленные строки в группе строк индекса columnstore, только если из этой группы строк было удалено определенное пороговое значение. Пороговое количество по умолчанию — 10 % от максимального количества строк (1 000 000), или 100 000 строк.Этот флаг трассировки изменяет пороговое значение на 1 % от общего количества текущих строк в группе строк columnstore. Если этот параметр включен вместе с флагом трассировки 11631, он составляет 1 % от текущего количества строк в группе строк, а не 1 % от 1 млн строк. Дополнительные сведения см. здесь: KB5000895. Применимо к: SQL Server 2019 (15.x) CU 9 и более поздних версий. Область: только глобальная. |
12324 | Устранена проблема, связанная с изменениями функции связи для Управляемый экземпляр SQL Azure, которая предотвращает синхронизацию групп доступности при выполнении реплик в разных накопительных обновлениях. Дополнительные сведения см. в статье KB5024276. Применимо к: SQL Server 2019 (15.x) CU 20 и более поздних версий. Область: только глобальная. |
12481 | Отключает ведение журнала сведений аудита для внешних разрешений в external_policy_permission_checked поле записей аудита. Дополнительные сведения см. в статье KB5022375.Применимо к: SQL Server 2022 (16.x) CU 1 и более поздних версий. Область: только глобальная. |
12618 | Включает модель автоматического исправления плана (APC) функции автоматической настройки для выполнения нескольких последовательных проверок регрессии плана для одного плана, что позволяет накапливать дополнительную статистику для оценки новой моделью. Дополнительные сведения см. в статье KB5026717. Область применения: SQL Server 2022 (16.x) CU 4 и более поздних версий. Область: только глобальная. |
12656 | Позволяет модели автоматического исправления плана (APC) функции автоматической настройки использовать регрессию плана на основе времени проверка, которая произойдет через пять минут после обнаружения изменения плана, что позволяет избежать смещения проверок регрессии запросами, которые выполняются быстро. Это позволяет APC принимать во внимание выполнение запросов, которые могут выполняться дольше или могут быть подвержены истеканию времени ожидания из-за изменения плана. Дополнительные сведения см. в статье KB5026717. Область применения: SQL Server 2022 (16.x) CU 4 и более поздних версий. Область: только глобальная. |
13116 | Отключает исправление для ошибки 13685819. Используйте этот флаг трассировки, если после применения SQL Server 2016 (13.x) с пакетом обновления 2 (CU 16) возникает проблема, из-за которой запросы DML (вставка,обновление/удаление) с параллельными планами не могут завершить выполнение и столкнуться с HP_SPOOL_BARRIER ожиданиями. Область применения: SQL Server 2016 (13.x) с пакетом обновления 2 (CU 16). Область: только глобальная. |
13127 | Включает дополнительные оптимизации сопоставления строковых шаблонов. Область применения: SQL Server 2019 (15.x) и более поздних версий и предназначена для высокопроизводительных систем с высокопроизводительными рабочими нагрузками. Область: глобальная или сеанс. |
13156 | Отключает исправление для проблемы с вызовом определяемой пользователем функции с большим количеством переоценок скалярных выражений может привести к ошибке планировщика, не являющейся результатом. Это исходное исправление иногда может привести к снижению производительности. Дополнительные сведения см. в статье KB4538581. Область: только глобальная. |
15025 | Отключает доступ к Key Vault Azure, необходимый для только что созданного виртуального файла журнала (VLF), что позволяет выполнять рабочие нагрузки клиентов с большим объемом без прерываний. После включения этого флага трассировки SQL Server использует расширенное управление ключами для шифрования и создания ключей и не обращается к Key Vault Azure во время создания VLF. Дополнительные сведения см. в статье Проблемы со специальными возможностями базы данных при больших объемах клиентских рабочих нагрузок, использующих расширенное управление ключами для шифрования и создания ключей. Применимо к: SQL Server 2019 (15.x) CU 19, SQL Server 2022 (16.x) CU 1 и более поздних версий. Область: только глобальная. |
15096 | Отключение операций подсчета населения (popcnt) с помощью наборов инструкций AVX-512. Область применения: SQL Server 2022 (16.x) и более поздних версий. Область: глобальная или сеанс. |
15097 | Включает поддержку AVX-512 для SQL Server 2022 (16.x) и более поздних версий. Важно! Рекомендуется включить поддержку AVX-512 для следующих ЦП: — Intel Ice Lake и более поздних версий — AMD EYPC Genoa и более поздних версий Область применения: SQL Server 2022 (16.x) и более поздних версий. Область: глобальная или сеанс. |
15212 | Отключает сообщения таймера компонента Service Broker, которые действуют как подробное уведомление о событии времени ожидания. Сообщения, на которые распространяется этот флаг трассировки: SSBDT: Dialog timer delete during registration в последовательности очистки диалогового окна компонента Service Broker и SSBDT: Dialog timer delete during dispatch в последовательности закрытия диалогового окна компонента Компонент Service Broker. После включения этого флага трассировки печать этих неофициальных сообщений пропускается.Область применения: SQL Server 2022 (16.x) и более поздних версий. Область: только глобальная. |
См. также раздел
- Типы данных (Transact-SQL)
- DBCC INPUTBUFFER (Transact-SQL)
- DBCC OUTPUTBUFFER (Transact-SQL)
- EXECUTE (Transact-SQL)
- SELECT (Transact-SQL)
- SET NOCOUNT (Transact-SQL)
- Указания запросов (Transact-SQL)
- Указания (Transact-SQL) — запросы
- SQL Server диагностика обнаруживает неотвеченные проблемы ввода-вывода