¿Qué significa cuando tiene "sql_exit_invoked" en System Health?

9

Tengo problemas con uno de mis servidores SQL Server 2016 Standard. Tengo 8 servidores de producción y este es el único que se bloquea al azar sin dejar rastro en el registro.

Tengo system_health habilitado en él. Noté que tengo una fila en la salud del sistema que es "sql_exit_invoked".

system_health_sql_exit_invoked

Estoy tratando de encontrar más información en esa fila. ¿Qué significa? La única información que encontré en Internet es que ocurre cuando se llama a SQLExit () y que se registra solo desde SQL 2012. (enlace disponible en el sitio web de msdn )

sql_exit_description

Entonces mi pregunta es: ¿Debería preocuparme de ver esto en mi registro? Lo encuentro solo en mi servidor problemático y no en ninguno de los otros 7 servidores. (Todos ellos son SQL Server 2016 Standard edition)

¿Alguien puede darme más información sobre esto?

Danielle Paquette-Harvey
fuente
1
Dado que el evento solo se genera al apagar, ¿tal vez se ha salido de los otros rastros del servidor? FYI, los valores posibles son FAST_SHUTDOWN, NICE_SHUTDOWN, ORDERLY_SHUTDOWN, SHUTDOWN_NOT_SETde acuerdo conSELECT * FROM sys.dm_xe_map_values WHERE name = 'sql_shutdown_option';
Dan Guzman

Respuestas:

5

Los eventos extendidos están muy poco documentados.

Los eventos extendidos del canal de depuración están aún peor documentados.

Según mis pruebas, necesitará usar el valor "shutdown_option" de esas entradas de evento como una pista de dónde buscar a continuación. Esto es lo que significan en mis pruebas limitadas:

  • ORDERLY_SHUTDOWN
    • reiniciar o detener el servicio limpiamente (usando Config Manager, complemento de servicios, etc.)
    • reiniciar Windows limpiamente (menú de inicio -> apagar / reiniciar)
  • NICE_SHUTDOWN- Detenga el servicio usando el SHUTDOWN;comando T-SQL
  • FAST_SHUTDOWN- Detenga el servicio usando el SHUTDOWN WITH NOWAIT;comando T-SQL

Tenga en cuenta que también probé lo siguiente, y no registraron nada en la sesión de eventos extendidos:

  • apague Windows manteniendo presionado el botón de encendido
  • matar el proceso sqlservr.exe desde el Administrador de tareas

No pude hacer SHUTDOWN_NOT_SETque se disparara la versión del evento, por lo que sigue siendo un misterio.


En su captura de pantalla, puedo ver que ORDERLY_SHUTDOWN es la opción en su escenario. En ese caso, dado que esto parece implicar un apagado limpio del servicio o PC con Windows, buscaría en el registro "Sistema" del Visor de eventos de Windows y vería por qué se reinicia la máquina o qué servicio / componente está emitiendo un comando de APAGADO al servicio de SQL Server.

¡Buena suerte!

Josh Darnell
fuente
gracias, eso me ayuda mucho! Entonces sé que en este caso particular no necesito preocuparme ya que el sistema operativo probablemente se reinició (lo validaré con el equipo de TI)
Danielle Paquette-Harvey