У меня большая проблема с историей агента SQL Server. он стал ОЧЕНЬ-ОЧЕНЬ медленным, когда я пытаюсь его просмотреть. Если я пробую через Management Studio, я часто получаю тайм-аут, и если я пытаюсь просмотреть его с помощью sp_help_jobhistory
просто он давно работает.
Я попытался уменьшить размер истории и sysjobhistory
в таблице всего 8000 строк ....
Есть ли способ как-то это оптимизировать?
Убедитесь, что таблица sysjobhistiory не фрагментирована. Проще всего его переиндексировать. Поскольку таблица такая маленькая, переиндексация должна произойти быстро.
Вы можете попытаться более регулярно обновлять (запускать новый) журнал своего агента. Это можно сделать с EXEC msdb.dbo.sp_cycle_agent_errorlog;
. Выполняйте это периодически, и ваши журналы будут меньше и удобнее в управлении. (Обычно я создаю задание агента, которое еженедельно циклирует журнал.) Кстати, вы также можете циклически циклировать журнал ошибок с помощью EXEC master.sys.sp_cycle_errorlog;
.