В течение последнего месяца один из моих серверов сталкивался с проблемами с агентом SQL Server. Он останавливается автоматически с ошибкой ниже, которая происходит случайно:
Выходной файл агента Sql
[097] Обнаружена утечка памяти [204 байта]
Исключение 5 обнаружено в строке 403 файла e: \ sql9_sp2_t \ sql \ komodo \ src \ core \ sqlagent \ src \ alertster.cpp. SQLServerAgent инициирует самоуничтожение
Я погуглил эту ошибку, но не получил много информации об этом. SQL Server и агент работают с одной и той же учетной записью домена; однако проблема заключается только в службе агента SQL Server.
Я также не могу увидеть службу агента SQL Server в диспетчере конфигурации SQL Server. Я проверил журнал ошибок SQL Server и журнал событий Windows, но не обнаружил никаких подозрительных действий.
Мои настройки памяти настроены правильно. Сервер имеет 32 ГБ ОЗУ, а SQL Server назначен максимальный объем памяти в 26 ГБ.
Детали системы:
- SQL Server 2012 с пакетом обновления 2 (SP2), стандартная версия 11.0.5058, 64-разрядная версия
- Windows Server 2008 R2 Ent Edition, 64-разрядная версия
- Предназначен для 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, чтобы он мог автоматически перезапускаться при остановке.