Протягом останнього місяця один із моїх серверів стикався з проблемами з агентом SQL Server. Він автоматично зупиняється з помилкою нижче, що відбувається випадковим чином:
Вихідний файл агента Sql
[097] Виявлено витік пам'яті [204 байти]
Виняток 5, що потрапив у рядок 403 файлу e: \ sql9_sp2_t \ sql \ komodo \ src \ core \ sqlagent \ src \ alerter.cpp. SQLServerAgent ініціює самозавершення
Я погукував цю помилку, але не отримав багато інформації про неї. І SQL Server, і агент працюють з одним і тим же обліковим записом домену; однак проблема полягає лише у службі агента SQL Server.
Я також не можу побачити службу агента SQL Server в Менеджері конфігурацій SQL Server. Я перевірив журнал помилок SQL Server та журнал перегляду подій Windows, але не побачив підозрілих дій.
Мої настройки пам'яті налаштовані правильно. На сервері є 32 ГБ оперативної пам’яті, а SQL Server призначений для використання макс. Пам'яті в 26 ГБ.
Деталі системи:
- SQL Server 2012 SP2 Std Edition 11.0.5058 64 біт
- 64-розрядна версія Windows Server 2008 R2 Ent Edition
- Виділено для SQL Server (на сервері не запускаються інші програми)
- Сервер було оновлено кілька місяців тому з SQL Server 2005 EE до 2012 SE.
- Ми не використовуємо сервер переадресації подій .
Я також перевірив базу даних msdb . На нього побіг checkdb, і він успішно завершився без помилок. Мені потрібна ваша допомога у вирішенні двох речей:
- Щоб виправити випадкову зупинку служби агента SQL Server
- Щоб додати службу агента SQL Server в Менеджер конфігурацій SQL Server
У нас є стороннє програмне забезпечення для моніторингу, тому ми отримуємо повідомлення негайно, якщо служба агентів припиняється. Наразі ми лише запускаємо послугу. Але ми хочемо знайти першопричину.
Я запустив наступний запит, запропонований Шоном Галларді, і отримав 95 рядів назад. Я не знаю, як інтерпретувати результат.
select *
from sys.dm_os_loaded_modules
where name not like '%microsoft%'
На жаль, я не можу опублікувати результати з міркувань безпеки.
Поки я не знайшов рішення цієї проблеми, я додав спроби повторних спроб до агента SQL Server, щоб він міг автоматично перезапуститись, коли він зупинився.