Содержание

MS SQL: Настройка отправки почты Database Mail

Что нужно:

Настройка выполняется в два этапа:

Настройка Database Mail

Запускаем SQL Server Management Studio (SSMS), подключаемся к MS SQL серверу и далее все делаем в нем.

Настройка SQL Server Agent

Отправляем письмо с результатами работы скрипта в виде вложения

Создаем Job, добавляем Step с типом «Transact-SQL Script (T-SQL)» (в примере подсчитывается суммарный размер баз):

EXEC msdb.dbo.sp_send_dbmail
    @profile_name = 'SQLAlerts',  
    @recipients = '[email protected]',  
    @body = 'DB Size for Server',
    @subject = 'DB Size for Server',
    @attach_query_result_as_file = 1,
    @query_attachment_filename = 'Server-DB-Size.csv',
    @query_result_header = 1,
    @query_result_width = 256,
    @query_result_separator = ',',
    @exclude_query_output = 1,
    @append_query_error = 1,
    @query_no_truncate = 0,
    @query_result_no_padding = 1,
    @query = 'SELECT sys.databases.name AS [Database Name],CONVERT(VARCHAR,SUM(size)*8/1024) AS ["Size (MB)"] FROM sys.databases JOIN sys.master_files ON sys.databases.database_id=sys.master_files.database_id GROUP BY sys.databases.name ORDER BY sys.databases.name;';

Необходимо правильно указать имя профиля @profile_name, получателя @recipients и т.д.