Agen SQL Server memulai penghentian diri


9

Selama sebulan terakhir, salah satu server saya menghadapi masalah dengan SQL Server Agent. Itu berhenti secara otomatis dengan kesalahan di bawah ini, yang terjadi secara acak:

Sql Agent Output file
[097] Kebocoran memori terdeteksi [204 byte]
Pengecualian 5 ditangkap pada baris 403 dari file e: \ sql9_sp2_t \ sql \ komodo \ src \ core \ sqlagent \ src \ alerter.cpp. SQLServerAgent memulai penghentian diri

Saya mencari kesalahan ini di Google tetapi tidak mendapatkan banyak info tentangnya. SQL Server dan Agen berjalan dengan akun domain yang sama; Namun, masalahnya hanya dengan layanan SQL Server Agent.

Saya juga tidak dapat melihat layanan SQL Server Agent di SQL Server Configuration Manager. Saya memeriksa log galat SQL Server, dan log Windows Event Viewer, tetapi tidak melihat aktivitas yang mencurigakan.

Pengaturan memori saya dikonfigurasi dengan benar. Server memiliki 32GB RAM dan SQL Server ditugaskan untuk menggunakan memori maks 26GB.

Detail sistem:

  • SQL Server 2012 SP2 Std Edition 11.0.5058 64 bit
  • Windows Server 2008 R2 Ent Edition 64 bit
  • Didedikasikan untuk SQL Server (tidak ada aplikasi lain yang berjalan di server)
  • Server ditingkatkan beberapa bulan yang lalu dari SQL Server 2005 EE hingga 2012 SE.
  • Kami tidak menggunakan Server Penerusan Acara .

Saya memeriksa database msdb juga. Jalankan checkdb di atasnya dan berhasil diselesaikan tanpa kesalahan. Saya butuh bantuan Anda dalam memperbaiki dua hal:

  1. Untuk memperbaiki penghentian layanan SQL Server Agent secara acak
  2. Untuk menambahkan layanan SQL Server Agent di SQL Server Configuration Manager

Kami memiliki perangkat lunak pihak ketiga untuk pemantauan, jadi kami segera diberi tahu jika layanan agen berhenti. Untuk saat ini kami hanya me-restart layanan. Tetapi kami ingin menemukan akar masalahnya.

Saya menjalankan query berikut yang disarankan oleh Sean Gallardy dan mendapatkan 95 baris kembali. Saya tidak tahu bagaimana menafsirkan hasilnya.

select * 
from sys.dm_os_loaded_modules 
where name not like '%microsoft%'

Sayangnya saya tidak dapat memposting hasilnya karena alasan keamanan.

Sampai saya menemukan solusi untuk masalah ini, saya telah menambahkan coba lagi upaya untuk SQL Server Agent sehingga dapat memulai kembali secara otomatis ketika dihentikan.


Ketika agen terbunuh, apakah Anda bisa masuk ke server dan memeriksa penggunaan file halaman? Ada item Connect tentang ini yang disebabkan oleh kelelahan file halaman oleh berbagai aplikasi (termasuk HyperBac).
Cody Konior

Saya akan memeriksanya ketika itu terjadi lagi.
SQLPRODDBA

Ketika Anda memutakhirkan dari SQL Server 2005 EE ke SQL Server 2012 SE apakah Anda melakukan pemutakhiran di tempat? Atau apakah Anda melakukan instalasi SQL Server yang benar-benar baru? Saya bertanya karena pada awal 2000-an saya menemukan beberapa kegagalan dengan upgrade di tempat yang diselesaikan dengan sepenuhnya menghapus folder dan menginstal ulang SQL Server di folder kosong. (Ya, itu merepotkan.)
RLF

Jawaban:


1

Karena Anda baru saja memutakhirkan beberapa bulan yang lalu dari SQL Server 2005 EE hingga 2012 SE, Anda harus menyimpan dan menghapus log peristiwa Anda karena SqlAgent mungkin macet ketika melihat ID Log Kejadian dari versi lama SQL Server. Misalnya, Agen mungkin macet karena membaca peristiwa yang dicatat oleh build SQL Server lebih awal dari build saat ini, yang hanya berisi data dengan SATU string penyisipan dan agen akan mencoba memformatnya menggunakan informasi sumber daya terbaru yang membutuhkan DUA string. Ini akan menyebabkan kebocoran memori singkat sebelum dimatikan karena buffer dialokasikan untuk string yang ia coba cetak ketika crash terjadi.

Sejauh layanan agen tidak tercantum dalam manajer konfigurasi, ada beberapa kemungkinan: https://support.microsoft.com/en-us/kb/941823

Pastikan Anda menjalankan Pengelola Konfigurasi 2012

Anda dapat mencoba membangun kembali Repositori WMI: https://blogs.technet.microsoft.com/askperf/2009/04/13/wmi-rebuilding-the-wmi-repository/

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.