Utilidades del lenguaje de marcado de reproducción (RML) para SQL Server

En este artículo se describe un grupo de herramientas que usan los profesionales de soporte técnico para solucionar problemas de Microsoft SQL Server.

Versión del producto original: SQL Server
Número de KB original: 944837

Introducción

El equipo de soporte técnico de SQL Server usa varias herramientas escritas internamente para ayudar a procesar casos típicos de soporte técnico al cliente. Replay Markup Language (RML) Utilities for SQL Server es un conjunto de herramientas determinado que los desarrolladores de bases de datos y los administradores del sistema pueden usar.

Más información

Puede usar RML Utilities para SQL Server para realizar las siguientes tareas:

  • Determine qué aplicación, base de datos, SQL Server inicio de sesión o consulta usa el máximo de recursos.
  • Determine si el plan de ejecución de un lote se cambia al capturar el seguimiento del lote. Además, puede usar utilidades rml para SQL Server para determinar cómo SQL Server ejecuta estos planes.
  • Determine qué consultas se ejecutan lentamente.

Después de capturar un seguimiento de una instancia de SQL Server, puede usar utilidades RML para SQL Server reproducir el archivo de seguimiento en otra instancia de SQL Server. Si también captura el seguimiento durante la reproducción, puede usar RML Utilities para SQL Server para comparar el nuevo archivo de seguimiento con el archivo de seguimiento original. Puede usar esta técnica para probar cómo se comporta SQL Server después de aplicar los cambios. Por ejemplo, puede usar esta técnica para probar cómo se comporta SQL Server después de realizar las siguientes tareas:

  • Instalación de un service pack de SQL Server
  • Instalación de una revisión de SQL Server
  • Actualizar un procedimiento almacenado o una función
  • Actualizar un índice o crear un índice

Historial de versiones

Número de versión Descripción
09.04.0102 Indica la versión web actual que está disponible en el Centro de descarga de Microsoft. Admite todas las versiones publicadas de SQL Server (SQL Server 2022, SQL Server 2019, SQL Server 2017, SQL Server 2016, SQL Server 2014, SQL Server 2012, SQL Server 2008 R2 y SQL Server 2008).
9.04.0100 Es la versión web anterior que está disponible en el Centro de descarga de Microsoft. Admite todas las versiones publicadas de 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 y SQL Server 2000).
9.04.0098 Indica el paquete de versión actual que se incluye con la herramienta Asistente para experimentación con bases de datos. Admite todas las versiones publicadas de SQL Server.
9.04.0097 Indica la versión actual disponible en el sitio de SQL Nexus que admite todas las versiones publicadas de SQL Server.
9.04.0051 Es la versión web anterior que está disponible en el Centro de descarga de Microsoft que admite SQL Server 2014, SQL Server 2012, SQL Server 2008 R2, SQL Server 2008, SQL Server 2005 y SQL Server 2000.
9.04.0004 Es la versión web anterior que admite SQL Server 2014, SQL Server 2012, SQL Server 2008 R2, SQL Server 2008, SQL Server 2005 y SQL Server 2000.
9.01.0109 Es la versión web anterior que admite SQL Server 2008 R2, SQL Server 2008, SQL Server 2005 y SQL Server 2000.
9.00.0023 Es la versión web anterior que admite SQL Server 2005 y SQL Server 2000.
8.10.0010 Es la versión web inicial que admite SQL Server 2000 y SQL Server 7.0.

La versión actual de RML Utilities para SQL Server reemplaza a las versiones anteriores. Debe desinstalar cualquier versión anterior de RML Utilities para SQL Server antes de instalar la versión actual. La versión actual del conjunto de herramientas contiene actualizaciones de software importantes, características mejoradas (archivos .trc y .xel de proceso) e informes, y mejoras de rendimiento y escalabilidad.

Obtención de las utilidades de RML para SQL Server

Nota:

Microsoft proporciona utilidades RML para SQL Server tal y como están. Microsoft Customer Support Services (CSS) no proporciona soporte técnico ni actualizaciones para el conjunto. Si tiene una sugerencia o quiere informar de un error, puede usar la dirección de correo electrónico en el tema "Problemas y asistencia" del archivo de Ayuda (RML Help.pdf). El archivo de Ayuda se incluye con las utilidades de RML para SQL Server.

Ventajas de las utilidades de RML para SQL Server

RmL Utilities for SQL Server es útil si desea simular las pruebas de aplicaciones cuando es impráctico o imposible de probar mediante la aplicación real. En un entorno de prueba, puede ser difícil generar la misma carga de usuario que existe en el entorno de producción. Puede usar UTILIDADES DE RML para SQL Server reproducir una carga de trabajo de producción en un entorno de prueba y evaluar el efecto de rendimiento de los cambios. Por ejemplo, podría probar una actualización a SQL Server 2008 o la aplicación de un service pack de SQL Server. Además, puede usar utilidades RML para SQL Server para analizar y comparar varias cargas de trabajo de reproducción. De lo contrario, este tipo de análisis de regresión sería un proceso difícil que tendría que realizar manualmente.

El archivo de Ayuda contiene un tema de inicio rápido. En este tema se incluye un breve ejercicio que le familiarizará con cada herramienta RML. Para abrir el archivo de Ayuda, seleccione Inicio, Todos los programas, Utilidades RML para SQL Server, Ayuda y, a continuación, Ayuda rml.

Herramientas en utilidades rml para SQL Server

RmL Utilities for SQL Server contiene las herramientas siguientes:

  • ReadTrace
  • Reportero
  • OStress
  • Agente de control de reproducción de OStress (ORCA)

Para obtener una descripción completa de cada herramienta y uso de ejemplo, consulte el archivo de ayuda de RML que se incluye en rml Utilities para SQL Server.

Dependencias de utilidades rml para SQL Server

Importante

Las aplicaciones que se proporcionan como parte del conjunto de herramientas de RML requieren que haya varios controles adicionales disponibles.

Dependencias de Reporter

  1. Debe asegurarse de que los controles del Visor de informes están disponibles en la misma carpeta queReporter.exe o en la caché global de ensamblados (GAC). Los archivos DLL que Reporter.exe requieren son:

    • Microsoft.ReportViewer.Common.dll
    • Microsoft.ReportViewer.DataVisualization.dll
    • Microsoft.ReportViewer.ProcessingObjectModel.dll
    • Microsoft.ReportViewer.WinForms.dll

    Puede descargar estos archivos DLL mediante el siguiente script de 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"
    
  2. Debe descargar e instalar una corrección de ReporterViewer para permitir que los vínculos de los informes de ReadTrace funcionen correctamente. Para descargar la corrección ReporterViewer, vaya a Microsoft Visual Studio 2010 Service Pack 1 Report Viewer (KB2549864).

Dependencias del expansador

Asegúrese de que los controles de compresión y descompresión están disponibles en la misma carpeta queExpander.exe o en la GAC. Los archivos DLL que Expander.exe requieren son los siguientes:

  • BRICOLSOFTZipx64.dll
  • UnRar64.dll
  • XceedZipX64.dll

Puede obtener estos archivos DLL de los paquetes de software correspondientes de los proveedores:

Dependencias de ReadTrace y Ostress

ReadTrace y Ostress usan los controladores ODBC y OLEDB que se incluyen como parte de la SQL Server Native Client. Si tiene previsto analizar archivos de eventos extendidos (*.xel), asegúrese de que Visual C++ 2010 Redistributable está instalado en el sistema.

Problemas y correcciones conocidos

Problema Solución
ReadTrace encuentra "ERROR: Comprobación del tiempo de ejecución de eventos: se detectó que falta la columna [cached_text] en el evento [sp_cache_remove] en la secuencia de eventos 209494" Se ha corregido en la versión 09.04.0102. Como solución alternativa, puede agregar marcas de seguimiento (-T28 -T29) a la línea de comandos ReadTrace.
El reportero encuentra "No se pudo cargar el archivo o ensamblado "Reporter, Version=9.4.10000.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" o una de sus dependencias. Error en la validación de nombres seguros. (Excepción de HRESULT: 0x8013141A)" Se ha corregido en la versión 09.04.0102. Como solución alternativa, puede crear la siguiente clave del Registro para invalidar la comprobación de nombre seguro: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\StrongName\Verification\Reporter,31BF3856AD364E35.
Se produce un error en ReadTrace con el error "No se puede conectar al servidor especificado. HRESULT inicial: 0x80040154". Ostress produce un error "Error al intentar establecer la conexión. Error de seguridad SSL.". Consulte las instrucciones para instalar SQL Server Native Client.
Se encuentra la excepción de ReadTrace "Excepción no controlada: System.IO.FileNotFoundException: No se pudo cargar el archivo o ensamblado "Microsoft.SqlServer.XEvent.Linq.dll" o una de sus dependencias. No se encontró el módulo especificado". Instalación de Visual C++ 2010 Redistributable

Ejemplos

En los ejemplos siguientes se muestra cómo usar algunas de las herramientas de RML.

Uso de ReadTrace.exe para importar datos Xevent en una base de datos

Use ReadTrace.exe para importar una serie de archivos Xevent que se recopilan mediante herramientas como PSSDIAG/SQLDiag.exe o SQL LogScout. Use el -I parámetro para apuntar al primer archivo .xel que se recopiló a tiempo, si hay varios archivos presentes. Para todos los modificadores de línea de comandos, use ReadTrace.exe /?:

ReadTrace.exe -Iserver_instance_20220211T1319480819_xevent_LogScout_target_0_132890707717540000.xel -oc:\temp\output -f -dPerfAnalysisDb -S.

Uso de Ostress.exe para probar la tensión de una consulta

Use OStress para enviar una consulta a un servidor que ejecuta SQL Server ejecutando 30 conexiones simultáneas y ejecutando la consulta 10 veces en cada conexión. Para todos los modificadores de línea de comandos, use Ostress.exe /?:

ostress.exe -E -dmaster -Q"select name from sys.databases" -n30 -r10

Aviso de declinación de responsabilidades sobre la información de contacto de terceros

Microsoft proporciona información de contacto de otros proveedores para ayudarle a encontrar información adicional sobre este tema. Dicha información de contacto puede cambiar sin notificación previa. Microsoft no garantiza la precisión de esta información de contacto de terceros.