Supervisar los componentes de SQL Server

Se aplica a:SQL Server

La supervisión es importante, puesto que SQL Server ofrece un servicio en un entorno dinámico. Los datos de la aplicación cambian. El tipo de acceso que requieren los usuarios cambia. La forma de conexión de los usuarios cambia. También pueden cambiar los tipos de aplicaciones que tienen acceso a SQL Server, pero SQL Server administra automáticamente los recursos en el nivel de sistema, como la memoria y el espacio en disco, para minimizar la necesidad de optimizar exhaustiva y manualmente el sistema. La supervisión permite a los administradores identificar las tendencias de funcionamiento para determinar si es necesario realizar cambios.

Para supervisar cualquier componente de SQL Server eficazmente:

  1. Defina los objetivos de supervisión.
  2. Seleccione la herramienta apropiada.
  3. Identifique los componentes que desea supervisar.
  4. Seleccione métricas para dichos componentes.
  5. Supervise el servidor.
  6. Análisis de los datos

Estos pasos se tratan más extensamente a continuación.

Defina los objetivos de supervisión

Para supervisar SQL Server de forma eficaz, debe identificar claramente los motivos de la supervisión. Entre los motivos se pueden incluir los siguientes:

  • Establecer una línea de base para el rendimiento.
  • Identificar los cambios del rendimiento a lo largo del tiempo.
  • Diagnosticar problemas de rendimiento concretos.
  • Identificar componentes o procesos para optimizar.
  • Comparar las consecuencias de distintas aplicaciones cliente sobre el rendimiento.
  • Llevar a cabo auditorías de la actividad de los usuarios.
  • Probar un servidor con cargas distintas.
  • Probar la arquitectura de las bases de datos.
  • Probar distintas programaciones de mantenimiento.
  • Probar los planes de copias de seguridad y restauración.
  • Determinar cuándo se ha de modificar la configuración de hardware.

Seleccione la herramienta apropiada

Después de decidir los motivos de la supervisión, debes seleccionar las herramientas adecuadas para ese tipo de supervisión. El sistema operativo Windows y SQL Server ofrecen un conjunto completo de herramientas para supervisar servidores en entornos con muchas transacciones. Estas herramientas revelan claramente las condiciones de una instancia del motor de base de datos de SQL Server o de una instancia de SQL Server Analysis Services.

Windows ofrece las herramientas siguientes para supervisar aplicaciones que se ejecutan en un servidor:

  • Inicia el Monitor de rendimiento (Windows), que te permite recopilar y ver datos en tiempo real sobre actividades como el uso de memoria, disco y procesador.
  • Registros y alertas de rendimiento
  • Administrador de tareas

Para obtener más información acerca de las herramientas de Windows o Windows Server, vea la documentación de Windows.

SQL Server ofrece las herramientas siguientes para supervisar componentes de SQL Server:

Importante

Seguimiento de SQL y SQL Server Profiler están en desuso. El espacio de nombres Microsoft.SqlServer.Management.Trace que contiene los objetos Trace y Replay de Microsoft SQL Server también están en desuso.

Esta característica se quitará en una versión futura de SQL Server. Evite utilizar esta característica en nuevos trabajos de desarrollo y tenga previsto modificar las aplicaciones que actualmente la utilizan.

Use eventos extendidos en su lugar. Para más información sobre Información general de Eventos extendidos, consulta Inicio rápido: Eventos extendidos y Usar el generador de perfiles XEvent de SSMS.

Nota:

SQL Server Profiler para cargas de trabajo de Analysis Services NO está obsoleto y seguirá recibiendo soporte.

Para obtener más información sobre las herramientas de supervisión de SQL Server, vea Herramientas de supervisión y optimización del rendimiento.

Identifique los componentes que desea supervisar

El tercer paso para supervisar una instancia de SQL Server es identificar los componentes que desea supervisar. Por ejemplo, si utilizas SQL Server Profiler para realizar el seguimiento de un servidor, puedes definir el seguimiento para que recopile datos de eventos concretos. También puedes excluir eventos que no se apliquen a tu situación.

Seleccione métricas para los componentes supervisados

Después de identificar qué componentes va a supervisar, determine las métricas de estos componentes. Por ejemplo, después de elegir los eventos que se van a incluir en un seguimiento, puede decidir incluir solo datos concretos acerca de los eventos. Al limitar el seguimiento a los datos relevantes para el mismo, se minimizan los recursos del sistema necesarios para realizar el seguimiento.

Supervise el servidor

Para supervisar el servidor, ejecute la herramienta de supervisión que ha configurado para recopilar datos. Por ejemplo, después de definir un seguimiento, puede ejecutarlo para recopilar datos acerca de eventos que ocurran en el servidor.

Analice los datos

Una vez haya finalizado el seguimiento, analice los datos para ver si ha alcanzado su objetivo de supervisión. Si no lo has hecho, modifica los componentes o las métricas utilizadas para supervisar el servidor.

A continuación se describe el proceso de captura y uso de datos de eventos.

  1. Aplique filtros para limitar los datos de eventos que va a recopilar.

    Si limita los datos de eventos, permitirá al sistema centrarse en los eventos pertinentes en el escenario de supervisión. Por ejemplo, si desea supervisar consultas lentas, puede utilizar un filtro para supervisar únicamente las consultas emitidas por la aplicación que tarden más de 30 segundos en ejecutarse en una base de datos determinada.

    Para obtener más información sobre el filtrado de Eventos extendidos, consulta Inicio rápido: Eventos extendidos.

    Para obtener más información sobre el filtrado de seguimiento de SQL, consulte Establecer un filtro de seguimiento (Transact-SQL) y Filtrar eventos en un seguimiento (SQL Server Profiler).

  2. Supervise (capture) eventos.

    Una vez habilitada, la supervisión activa captura datos de la aplicación, la instancia de SQL Server o el sistema operativo especificados. Por ejemplo, cuando se supervisa la actividad de disco mediante el Monitor de sistema, la supervisión captura datos de eventos, como las lecturas y escrituras de disco, y los muestra en pantalla. Para más información, vea Supervisión del uso de recursos (Monitor de rendimiento).

  3. Guarde los datos de eventos capturados.

    Al guardar datos de eventos capturados, puede analizarlos posteriormente. Los datos de eventos capturados se guardan en un archivo que se puede volver a cargar en la herramienta con que se creó para el análisis. El almacenamiento de los datos de eventos capturados es importante cuando se crea una línea base de rendimiento. Los datos de la línea base de rendimiento se guardan y se utilizan, al comparar datos de eventos capturados recientemente, a fin de determinar si el rendimiento es óptimo.

    Los Eventos extendidos permiten guardar datos de eventos en un archivo de eventos, contador de eventos, histograma y búfer en anillo. Para obtener más información, consulta Destinos para Eventos extendidos.

    Los datos de eventos de seguimiento de SQL incluso se pueden reproducir mediante la utilidad de Distributed Replay o SQL Server Profiler. SQL Server Profiler permite guardar los datos de eventos en un archivo o una tabla de SQL Server. Para obtener más información, vea Plantillas y permisos de SQL Server Profiler.

  4. Cree plantillas de seguimiento que contengan la configuración especificada para capturar los eventos.

    Las plantillas de seguimiento incluyen especificaciones acerca de los eventos, los datos de eventos y los filtros que se utilizarán para capturar datos. Puede utilizar estas plantillas para supervisar más tarde un conjunto específico de eventos, sin necesidad de volver a definir los eventos, los datos de los eventos ni los filtros. Por ejemplo, si desea supervisar a menudo el número de interbloqueos, y los usuarios implicados en estos interbloqueos, puede crear una plantilla que defina estos eventos, los datos y los filtros de eventos, guardar la plantilla y volver a aplicar el filtro la próxima vez que desee supervisar los interbloqueos.

    Una definición de sesión de Eventos extendidos es una plantilla que se puede incluir en un script y volver a usarse. Para crear y administrar sesiones, vea Administración de sesiones de eventos en el Explorador de objetos. El XEvent Profiler de Management Studio ya proporciona plantillas que están listas para usarse. Para obtener más información, vea Uso de XEvent Profiler de SSMS.

    SQL Server Profiler usa las plantillas de seguimiento con este fin. Para obtener más información, consulte Establecer valores predeterminados de definición de seguimiento (SQL Server Profiler) y Crear una plantilla de seguimiento (SQL Server Profiler).

    Sugerencia

    Una definición de seguimiento de SQL se puede convertir en una sesión de eventos extendidos. Para obtener más información, vea Conversión de un script de seguimiento de SQL existente en una sesión de eventos extendidos.

  5. Analice los datos de eventos capturados.

    Para analizar los datos de eventos capturados, es necesario cargarlos en la aplicación con que se capturaron.

    Por ejemplo, un seguimiento de eventos extendidos capturado se puede volver a cargar en SQL Server Management Studio para ver y analizar. Para más información, consulta Ver datos de eventos en SQL Server Management Studio.

    Los datos del seguimiento de SQL se pueden volver a cargar en SQL Server Profiler para verlos y analizarlos. Para obtener más información, vea Ver y analizar seguimientos con SQL Server Profiler.

    El análisis de los datos de eventos conlleva determinar qué sucede y por qué. Esta información permite realizar cambios para mejorar el rendimiento, como agregar memoria, cambiar índices, corregir problemas de códigos con procedimientos almacenados o instrucciones Transact-SQL, etc., en función del tipo de análisis realizado. Por ejemplo, se puede usar el asistente para la optimización del motor de base de datos para analizar un seguimiento capturado de Eventos extendidos o SQL Server Profiler y hacer recomendaciones de indexación en función de los resultados.

  6. Reproduzca los datos de los eventos capturados (opcional).

    La reproducción de eventos permite establecer una copia de prueba del entorno de base de datos en el que se capturaron los datos y, a continuación, repetir los eventos capturados tal y como ocurrieron originalmente en el sistema real. Esta capacidad solo está disponible con la utilidad de reproducción distribuida o SQL Server Profiler. Puede reproducir los eventos a la velocidad original, a la mayor velocidad posible (para intensificar el uso del sistema) o paso a paso (el tipo de reproducción más frecuente) para analizar el sistema después de que haya ocurrido cada evento. Al analizar los eventos exactos de un entorno de pruebas, puede evitar daños en el sistema de producción. Para obtener más información, vea Reproducir seguimientos.