Apa artinya ketika Anda memiliki "sql_exit_invoked" di System Health?

9

Saya mengalami masalah dengan salah satu server SQL Server 2016 Standard saya. Saya memiliki 8 server produksi dan yang ini adalah satu-satunya yang crash secara acak tanpa ada jejak dalam log.

Saya memiliki system_health diaktifkan di sana. Saya perhatikan bahwa saya memiliki baris dalam penyihir kesehatan sistem adalah "sql_exit_invoked".

system_health_sql_exit_invoked

Saya mencoba mencari lebih banyak informasi di baris itu. Apa artinya? Satu-satunya info yang saya temukan melalui internet adalah bahwa hal itu terjadi ketika SQLExit () dipanggil dan hanya dicatat sejak SQL 2012. (tautan tersedia di situs web msdn )

sql_exit_description

Jadi pertanyaan saya adalah: Haruskah saya khawatir melihat ini di log saya? Saya menemukan ini hanya pada server bermasalah saya dan tidak pada salah satu dari 7 server lainnya. (Semua itu adalah edisi standar SQL Server 2016)

Adakah yang bisa memberi saya informasi lebih lanjut tentang ini?

Danielle Paquette-Harvey
sumber
1
Karena acara ini hanya dihasilkan pada saat shutdown, mungkin itu telah bergulir dari jejak server lain? FYI, nilai-nilai yang mungkin adalah FAST_SHUTDOWN, NICE_SHUTDOWN, ORDERLY_SHUTDOWN, SHUTDOWN_NOT_SETmenurutSELECT * FROM sys.dm_xe_map_values WHERE name = 'sql_shutdown_option';
Dan Guzman

Jawaban:

5

Acara yang Diperpanjang didokumentasikan dengan sangat buruk.

Acara diperpanjang saluran debug bahkan lebih buruk didokumentasikan.

Berdasarkan pengujian saya, Anda harus menggunakan nilai "shutdown_option" dari entri acara tersebut sebagai petunjuk untuk melihat ke mana selanjutnya. Inilah yang mereka maksud dalam pengujian terbatas saya:

  • ORDERLY_SHUTDOWN
    • restart atau hentikan layanan dengan bersih (menggunakan Config Manager, Layanan masuk, dll)
    • restart Windows dengan bersih (menu mulai -> shutdown / restart)
  • NICE_SHUTDOWN- hentikan layanan menggunakan perintah SHUTDOWN;T-SQL
  • FAST_SHUTDOWN- hentikan layanan menggunakan perintah SHUTDOWN WITH NOWAIT;T-SQL

Perhatikan bahwa saya juga mencoba yang berikut ini, dan mereka tidak mendaftarkan apa pun di sesi Acara yang Diperpanjang:

  • matikan Windows dengan menahan tombol daya
  • matikan proses sqlservr.exe dari Task Manager

Saya tidak dapat membuat SHUTDOWN_NOT_SETversi acara untuk dipecat, sehingga orang tetap menjadi misteri.


Di tangkapan layar Anda, saya dapat melihat bahwa ORDERLY_SHUTDOWN adalah opsi dalam skenario Anda. Dalam hal ini, karena ini sepertinya menyiratkan shutdown bersih dari layanan atau PC Windows, saya akan melihat ke dalam log "System" Windows Event Viewer dan melihat mengapa mesin sedang direstart, atau layanan / komponen apa yang mengeluarkan perintah SHUTDOWN ke serevice SQL Server.

Semoga berhasil!

Josh Darnell
sumber
terima kasih, itu banyak membantu saya! Lalu saya tahu bahwa dalam kasus khusus ini saya tidak perlu khawatir karena OS mungkin dimulai ulang (saya akan memvalidasi itu dengan tim TI)
Danielle Paquette-Harvey