Отправка автоматических уведомлений электронной почты о работе в SQL Server с помощью SMTP

Отправка автоматических уведомлений электронной почты о работе в SQL Server с помощью SMTP
Отправка автоматических уведомлений электронной почты о работе в SQL Server с помощью SMTP

Видео: Отправка автоматических уведомлений электронной почты о работе в SQL Server с помощью SMTP

Видео: Отправка автоматических уведомлений электронной почты о работе в SQL Server с помощью SMTP
Видео: Подключение к удаленному рабочему столу Ubuntu по RDP - YouTube 2024, Ноябрь
Anonim

Когда у вас есть автоматические задания резервного копирования, запущенные на вашем сервере базы данных, иногда вы забываете, что они даже работают. Затем вы забываете проверить, успешно ли они выполняются, и не понимают, до сбоя базы данных, и вы не можете ее восстановить, так как у вас нет текущей резервной копии.

Здесь появляются уведомления по электронной почте, поэтому вы можете видеть статус работы каждое утро, когда вы потягиваете кофе и притворяетесь, что работаете.

SQL Server предоставляет встроенный метод отправки писем, но, к сожалению, для него требуется наличие Outlook и профиля, установленного на сервере, что не обязательно является идеальным способом отправки электронной почты. К счастью, существует еще один метод, который включает установку хранимой процедуры на вашем сервере, которая позволит вам отправлять электронную почту через SMTP.

Загрузите здесь хранимую процедуру sp_SQLNotify.

Вы захотите отредактировать одну строку в хранимой процедуре, чтобы поместить IP-адрес вашего SMTP-сервера:

EXEC @hr = sp_OASetProperty @iMsg, ‘Configuration.fields(“https://schemas.microsoft.com/cdo/configuration/smtpserver”).Value’, ‘10.1.1.10’

Установите хранимую процедуру в основную базу данных, чтобы ее можно было легко использовать из любой точки.

Откройте список «Агент / список агентов SQL Server» и выберите свойства для задания, которое вы пытаетесь создать для:

Перейдите на вкладку «Шаги», и вы увидите экран, который выглядит так:
Перейдите на вкладку «Шаги», и вы увидите экран, который выглядит так:

Имя шага: успешное уведомление по электронной почте

Введите этот SQL в окно командной строки, как показано ниже. Вы хотите настроить адреса электронной почты и сообщения в соответствии с вашей средой:

exec master.dbo.sp_SQLNotify ‘[email protected]’,’[email protected]’,’Backup Job Success’,’The Backup Job completed successfully’

Имя шага: ошибка уведомления по электронной почте

SQL:

exec master.dbo.sp_SQLNotify ‘[email protected]’,’[email protected]’,’Backup Job Failure,’The Backup Job failed’

Теперь идея состоит в том, чтобы элементы соответствовали конкретному рабочему процессу. Сначала нажмите «Изменить» на шаге 1 и задайте свойства, как показано здесь:

Теперь отредактируйте второй шаг, один запустил «Успех уведомления по электронной почте» и задайте свойства, как показано здесь:

Мы говорим, что если задание на уведомление успешно выполнено, просто закройте задание, не выполнив шаг 3. Если мы не укажем это, мы получим два письма, один с успехом и один с ошибкой.
Мы говорим, что если задание на уведомление успешно выполнено, просто закройте задание, не выполнив шаг 3. Если мы не укажем это, мы получим два письма, один с успехом и один с ошибкой.

Теперь отредактируйте третий шаг, один из которых содержит сообщение об ошибке «Отказ электронной почты» и задайте свойства, как показано здесь:

Теперь ваши рабочие шаги должны выглядеть так:
Теперь ваши рабочие шаги должны выглядеть так:
Теперь у вас должны быть уведомления по электронной почте в вашем почтовом ящике для успеха или неудачи.
Теперь у вас должны быть уведомления по электронной почте в вашем почтовом ящике для успеха или неудачи.

Примечание. Хранимая процедура, используемая в этой статье, была найдена здесь, хотя это может и не быть исходным источником.

Загрузите здесь хранимую процедуру sp_SQLNotify.

Рекомендуемые: