Служебные программы языка разметки воспроизведения (RML) для SQL Server
В этой статье описывается группа инструментов, которые используются специалистами поддержки для устранения неполадок Microsoft SQL Server.
Исходная версия продукта: SQL Server
Исходный номер базы знаний: 944837
Введение
Группа поддержки SQL Server использует несколько внутренних средств для обработки типичных вариантов поддержки клиентов. Служебные программы языка разметки воспроизведения (RML) для SQL Server — это один из конкретных наборов инструментов, которые могут использовать разработчики баз данных и системные администраторы.
Дополнительная информация
Служебные программы RML для SQL Server можно использовать для выполнения следующих задач:
- Определите, какое приложение, база данных, имя входа SQL Server или запрос используют максимальные ресурсы.
- Определите, изменяется ли план выполнения пакета при записи трассировки для пакета. Кроме того, можно использовать служебные программы RML для SQL Server, чтобы определить, как SQL Server выполняет эти планы.
- Определите, какие запросы выполняются медленно.
После записи трассировки для экземпляра SQL Server можно использовать служебные программы RML для SQL Server для воспроизведения файла трассировки в другом экземпляре SQL Server. При записи трассировки во время воспроизведения можно использовать служебные программы RML для SQL Server для сравнения нового файла трассировки с исходным файлом трассировки. Этот метод можно использовать для проверки поведения SQL Server после применения изменений. Например, этот метод можно использовать для проверки поведения SQL Server после выполнения следующих задач:
- Установка пакета обновления SQL Server
- Установка исправления SQL Server
- Обновление хранимой процедуры или функции
- Обновление индекса или создание индекса
История версий
Номер версии | Description |
---|---|
09.04.0103 | Указывает текущий веб-выпуск, доступный в Центре загрузки Майкрософт. Она поддерживает все выпущенные версии SQL Server (SQL Server 2022, SQL Server 2019, SQL Server 2017, SQL Server 2016, SQL Server 2014, SQL Server 2012, SQL Server 2008 R2 и SQL Server 2008). |
09.04.0102 | Указывает предыдущий веб-выпуск, доступный в Центре загрузки Майкрософт. Она поддерживает все выпущенные версии SQL Server (SQL Server 2022, SQL Server 2019, SQL Server 2017, SQL Server 2016, SQL Server 2014, SQL Server 2012, SQL Server 2008 R2 и SQL Server 2008). |
9.04.0100 | Указывает предыдущий веб-выпуск, доступный в Центре загрузки Майкрософт. Она поддерживает все выпущенные версии SQL Server (SQL Server 2019, SQL Server 2017, SQL Server 2016, SQL Server 2014, SQL Server 2012, SQL Server 2008 R2, SQL Server 2008, SQL Server 2005 и SQL Server 2000). |
9.04.0098 | Указывает предыдущий пакет веб-выпуска, включенный в средство помощника по экспериментации базы данных. Она поддерживает все выпущенные версии SQL Server. |
9.04.0097 | Указывает текущий выпуск, доступный на сайте SQL Nexus, который поддерживает все выпущенные версии SQL Server. |
9.04.0051 | Это предыдущий веб-выпуск, доступный в Центре загрузки Майкрософт, который поддерживает SQL Server 2014, SQL Server 2012, SQL Server 2008 R2, SQL Server 2008, SQL Server 2005 и SQL Server 2000. |
9.04.0004 | Предыдущий веб-выпуск, поддерживающий SQL Server 2014, SQL Server 2012, SQL Server 2008 R2, SQL Server 2008, SQL Server 2005 и SQL Server 2000. |
9.01.0109 | Является предыдущим веб-выпуском, поддерживающим SQL Server 2008 R2, SQL Server 2008, SQL Server 2005 и SQL Server 2000. |
9.00.0023 | Является предыдущим веб-выпуском, поддерживающим SQL Server 2005 и SQL Server 2000. |
8.10.0010 | Исходный веб-выпуск, поддерживающий SQL Server 2000 и SQL Server 7.0. |
Текущая версия программ RML для SQL Server заменяет все более ранние версии. Перед установкой текущей версии необходимо удалить любую более раннюю версию программ RML для SQL Server. Текущая версия набора инструментов содержит важные обновления программного обеспечения, улучшенные функции (процессы TRC и XEL-файлы ) и отчеты, а также улучшения производительности и масштабируемости.
Получение служебных программ RML для SQL Server
Служебные программы RML для SQL Server доступны для скачивания из Центра загрузки Майкрософт.
После установки помощника по эксперименту базы данных вы найдете средства RML (
ReadTrace
иOStress
) в папкеC:\Program Files (x86)\Microsoft Corporation\Database Experimentation Assistant\Dependencies\X64\
.
Примечание.
Корпорация Майкрософт предоставляет служебные программы RML для SQL Server как есть. Службы поддержки клиентов Майкрософт (CSS) не предоставляют поддержку или обновления для набора. Если у вас есть предложение или вы хотите сообщить об ошибке, вы можете использовать адрес электронной почты в разделе "Проблемы и помощь" в файле справки (RML Help.pdf). Файл справки включен в программы RML для SQL Server.
Преимущества служебных программ RML для SQL Server
Служебные программы RML для SQL Server полезны, если вы хотите имитировать тестирование приложений, когда это нецелесообразно или невозможно протестировать с помощью реального приложения. В тестовой среде может быть трудно создать ту же нагрузку пользователя, которая существует в рабочей среде. Служебные программы RML для SQL Server можно использовать для воспроизведения рабочей нагрузки в тестовой среде и оценки влияния на производительность любых изменений. Например, можно протестировать обновление до SQL Server 2008 или приложение пакета обновления SQL Server. Кроме того, для анализа и сравнения различных рабочих нагрузок воспроизведения можно использовать служебные программы RML для SQL Server. Такой анализ регрессии в противном случае будет сложным процессом, который необходимо выполнить вручную.
Файл справки содержит раздел быстрого запуска. В этом разделе содержится краткое упражнение, которое знакомит вас с каждым средством RML. Чтобы открыть файл справки, выберите "Пуск", наведите указатель на все программы RML для SQL Server, наведите указатель на справку и выберите справку RML.
Средства в программах RML для SQL Server
Служебные программы RML для SQL Server содержат следующие средства:
- ReadTrace
- Сообщивший
- OStress
- Агент управления воспроизведением OStress (ORCA)
Полное описание каждого средства и примера использования см. в файле справки RML, включенном в программы RML для SQL Server.
Зависимости для служебных программ RML для SQL Server
Внимание
Приложения, предоставляемые в рамках набора инструментов RML, требуют предоставления нескольких дополнительных элементов управления.
Зависимости для репортера
Необходимо убедиться, что элементы управления "Средство просмотра отчетов" доступны в той же папке, что и Reporter.exe или в глобальном кэше сборок (GAC). Требуются библиотеки DLL, которые Reporter.exe :
- Microsoft.ReportViewer.Common.dll
- Microsoft.ReportViewer.DataVisualization.dll
- Microsoft.ReportViewer.ProcessingObjectModel.dll
- Microsoft.ReportViewer.WinForms.dll
Последние версии служебных программ RML включают эти библиотеки DLL в папку приложения.
Если это недоступно, эти библиотеки DLL можно скачать с помощью следующего скрипта PowerShell:
Register-PackageSource -Name MyNuGet -Location https://www.nuget.org/api/v2 -ProviderName NuGet Get-PackageSource Find-Package Microsoft.ReportViewer.Common -AllVersions Install-Package Microsoft.ReportViewer.Common -RequiredVersion 10.0.40219.1 Copy-Item -Path "C:\Program Files\PackageManagement\NuGet\Packages\Microsoft.ReportViewer.Common.10.0.40219.1\lib\Microsoft.ReportViewer.Common.dll" -Destination "C:\Program Files\Microsoft Corporation\RMLUtils" Copy-Item -Path "C:\Program Files\PackageManagement\NuGet\Packages\Microsoft.ReportViewer.Common.10.0.40219.1\lib\Microsoft.ReportViewer.DataVisualization.dll" -Destination "C:\Program Files\Microsoft Corporation\RMLUtils" Copy-Item -Path "C:\Program Files\PackageManagement\NuGet\Packages\Microsoft.ReportViewer.Common.10.0.40219.1\lib\Microsoft.ReportViewer.ProcessingObjectModel.dll" -Destination "C:\Program Files\Microsoft Corporation\RMLUtils" Find-Package Microsoft.ReportViewer.WinForms -AllVersions Install-Package Microsoft.ReportViewer.WinForms -RequiredVersion 10.0.40219.1 Copy-Item -Path "C:\Program Files\PackageManagement\NuGet\Packages\Microsoft.ReportViewer.WinForms.10.0.40219.1\lib\Microsoft.ReportViewer.WinForms.dll" -Destination "C:\Program Files\Microsoft Corporation\RMLUtils"
Для правильной работы ссылок в отчетах ReadTrace необходимо скачать и установить исправление ReporterViewer. Чтобы скачать исправление ReporterViewer, перейдите в средство просмотра отчетов Microsoft Visual Studio 2010 с пакетом обновления 1 (KB2549864).
Зависимости для расширения
Убедитесь, что элементы управления сжатием и декомпрессией доступны в той же папке, что и Expander.exe или в GAC. Библиотеки DLL, которые требуются Expander.exe , приведены ниже.
- BRICOLSOFTZipx64.dll
- UnRar64.dll
- XceedZipX64.dll
Эти библиотеки DLL можно получить из соответствующих программных пакетов поставщиков:
https://www.rarlab.com/rar_add.htm — поиск динамической библиотеки UnRAR.dll для разработчиков программного обеспечения Windows
Зависимости для ReadTrace и Ostress
ReadTrace и Ostress используют драйверы ODBC и OLEDB, отправленные в составе собственного клиента SQL Server. Начиная с версии 09.04.0103, набор служебных программ RML не зависит только от собственного клиента SQL Server (SNAC). Он может использовать драйверы Microsoft ODBC или OLEDB в системе, где она установлена.
Если вы планируете анализировать файлы расширенных событий (*.xel), убедитесь, что распространяемый компонент Visual C++ 2010 установлен в системе.
Известные проблемы и часто задаваемые вопросы
Проблема | Решение |
---|---|
ReadTrace обнаруживает ошибку "Не удается подключиться к указанному серверу. Initial HRESULT: 0x80040154" на компьютерах, на которых SQL Server не установлен или установлен только SQL Server 2022 | Исправлено в версии 09.04.0103. В качестве обходного решения можно установить собственный клиент SQL Server или другую версию SQL Server. Класс HRESULT 0x80040154 REGDB_E_CLASSNOTREG не зарегистрирован является файлом заголовка winerror.h, что означает, что компонент COM не зарегистрирован, так как, скорее всего, он не установлен. Это происходит, так как SQL Server 2022 не отправляет собственный клиент SQL Server. |
ReadTrace обнаруживает "ОШИБКА: проверка среды выполнения событий: обнаружен отсутствующий столбец [cached_text] в событии [sp_cache_remove] в последовательности событий 209494". | Исправлено в версии 09.04.0102. В качестве обходного решения можно добавить флаги трассировки (-T28 -T29 ) в командную строку ReadTrace. |
Репортер сталкивается с сообщением "Не удалось загрузить файл или сборку "Репортер", Version=9.4.10000.0, Culture=neutral, PublicKeyToken=31bf3856ad36ad364e35 или одно из его зависимостей. Сбой при проверке правильности строгого имени. (Исключение из HRESULT: 0x8013141A)" | Исправлено в версии 09.04.0102. В качестве обходного решения можно создать следующий раздел реестра, чтобы переопределить проверку строгого имени: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\StrongName\Verification\Reporter,31BF3856AD364E35 |
ReadTrace завершается ошибкой "Не удается подключиться к указанному серверу. Первоначальный HRESULT: 0x80040154". Ostress завершается ошибкой "Попытка установить подключение завершилась ошибкой. Ошибка безопасности SSL.". | Инструкции по установке собственного клиента SQL Server. |
Вы столкнулись с исключением из ReadTrace "Необработанное исключение: System.IO.FileNotFoundException: не удалось загрузить файл или сборку "Microsoft.SqlServer.XEvent.Linq.dll" или одну из его зависимостей. Не удалось найти указанный модуль. | Установка распространяемого компонента Visual C++ 2010 |
Примеры
В следующих примерах показано, как использовать некоторые средства RML.
Использование ReadTrace.exe для импорта данных Xevent в базе данных
Используйте ReadTrace.exe для импорта ряда файлов Xevent, собранных с помощью таких средств, как PSSDIAG/SQLDiag.exe или SQL LogScout. -I
Используйте параметр, чтобы указать первый XEL-файл, собранный вовремя, если присутствует несколько файлов. Для всех коммутаторов командной строки используйте ReadTrace.exe /?
следующую команду:
ReadTrace.exe -Iserver_instance_20220211T1319480819_xevent_LogScout_target_0_132890707717540000.xel -oc:\temp\output -f -dPerfAnalysisDb -S.
Использование Ostress.exe для тестирования запроса
Используйте OStress для отправки запроса на сервер, на котором выполняется SQL Server, выполнив 30 одновременных подключений и выполнив запрос 10 раз в каждом подключении. Для всех коммутаторов командной строки используйте Ostress.exe /?
следующую команду:
ostress.exe -E -dmaster -Q"select name from sys.databases" -n30 -r10
Заявление об отказе от ответственности за контактные данные сторонней организации
Корпорация Майкрософт предоставляет контактные данные сторонних производителей в целях получения дополнительных сведений по данной теме. Эти данные могут быть изменены без предварительного уведомления. Корпорация Майкрософт не гарантирует точность контактных данных сторонних производителей.