Как администратор баз данных (DBA), важно знать о любых неудачных заданиях в вашей среде SQL Server. Вам не только нужно знать, когда задание не выполняется, но и нужно устранить проблему и предоставить аудируемый след ваших действий. В этой статье мы рассмотрим решение для мониторинга и управления неудачными заданиями в SQL Server.
Подходы к мониторингу неудачных заданий
Существует несколько подходов, которые вы можете использовать для мониторинга неудачных заданий в SQL Server. Один из вариантов – установить почту на сервере баз данных и позволить системе уведомлять вас о неудачах. Хотя это является приемлемым решением, оно может быть не подходящим для всех версий SQL Server или для сред с несколькими серверами.
Другой вариант – реализовать Reporting Services (RS) для создания отчетов о неудачах заданий. Однако это может быть не идеальным решением для сред с большим количеством серверов для мониторинга.
Также на рынке доступны сторонние решения, которые могут помочь вам организовать ваши задания и уведомлять вас о неудачах. Эти решения могут быть эффективными, но они могут иметь дополнительные затраты.
В этой статье мы рассмотрим пользовательское решение для мониторинга неудачных заданий в SQL Server.
Обзор пользовательского решения
Пользовательское решение включает создание центрального сервера мониторинга с установленным на нем SQL Server. Для каждого сервера, который вы хотите мониторить, будет создан и протестирован связанный сервер. Сервер мониторинга будет иметь задание, которое запускается периодически и извлекает данные о неудачных заданиях с связанных серверов. Эти данные будут храниться локально на сервере мониторинга.
На все заинтересованные стороны, включая DBA, будет отправлено электронное письмо с подробностями о каждом неудачном задании. Затем DBA заполнит данные о устранении, связанные с каждой неудачей. Эта информация будет храниться в таблице истории, предоставляя аудируемый след действий, предпринятых для устранения неудачи.
Могут быть созданы отчеты для аудиторов или других заинтересованных сторон, содержащие информацию о неудачах заданий и их устранении.
Компоненты системы
Пользовательское решение включает несколько компонентов:
- Сервер мониторинга: Это центральный сервер, на котором установлен SQL Server. Он отвечает за получение данных о неудачных заданиях с связанных серверов.
- Связанные серверы: Они создаются для каждого сервера, который вы хотите мониторить. Они позволяют серверу мониторинга подключаться к мониторируемым серверам и получать данные о неудачах заданий.
- Таблица стадии: В этой таблице хранятся данные о неудачных заданиях, полученные с связанных серверов.
- Таблица истории: После того, как неудача задания была сообщена, данные перемещаются в таблицу истории. Для целей устранения в таблицу истории добавляются дополнительные поля.
- Таблицы конфигурации: В этих таблицах хранится информация о серверах, которые будут мониториться, включая настройки уведомлений по электронной почте и группировку серверов.
- Хранимые процедуры: Эти процедуры обрабатывают вставку данных в таблицу истории, отправку уведомлений по электронной почте и обработку неудачных заданий.
- Системные задания: Эти задания отвечают за выполнение хранимых процедур и управление общим процессом мониторинга неудачных заданий.
Преимущества пользовательского решения
Пользовательское решение предоставляет несколько преимуществ:
- Своевременные уведомления: Система отправляет уведомления по электронной почте для каждого неудачного задания, обеспечивая своевременное информирование DBA о любых проблемах.
- Аудируемый след: Таблица истории позволяет DBA документировать шаги, предпринятые для устранения каждой неудачи, обеспечивая аудируемый след действий.
- Гибкая конфигурация: Таблицы конфигурации позволяют легко управлять серверами, которые будут мониториться, и настройками уведомлений по электронной почте.
- Масштабируемость: Решение может быть масштабировано для мониторинга нескольких серверов, что делает его подходящим для сред с большим количеством экземпляров SQL Server.
Заключение
Мониторинг неудачных заданий в SQL Server – это важная задача для DBA. Хотя существуют различные подходы и решения, пользовательское решение может обеспечить гибкость и контроль, необходимые для эффективного управления неудачами заданий. Путем внедрения центрального сервера мониторинга, связанных серверов и системы хранения и отчетности о неудачах заданий DBA может обеспечить своевременное устранение и поддержание аудируемого следа своих действий.