Ако настройвате Database Mail за изпращане на имейли в SQL Server, ще трябва да имате поне един акаунт в Database Mail.
Можете да създавате акаунти за поща в база данни с T-SQL, като изпълните sysmail_add_account_sp
съхранена процедура в msdb
база данни.
Пощенският акаунт в базата данни е акаунтът, който изпраща имейла. Например, ако имате автоматизиран имейл, който се изпраща всеки път, когато задание на SQL Server Agent се провали, това е акаунтът, който изпраща този имейл.
Можете също така да посочите неща като отделен имейл за „отговор“, показвано име и т.н.
Можете да имате няколко акаунта за различни задачи, ако е необходимо. Просто изпълнете sysmail_add_account_sp
всеки път, когато трябва да създадете нов акаунт.
Пример
Ето пример за създаване на акаунт в Database Mail.
EXECUTE msdb.dbo.sysmail_add_account_sp
@account_name = 'DB Admin',
@description = 'Mail account for admin emails.',
@email_address = '[email protected]',
@replyto_address = '[email protected]',
@display_name = 'DB Automated Mailer',
@mailserver_name = 'smtp.example.com',
@port = 25;
В този пример посочвам показвано име на „DB Automated Mailer“. Това е удобно за потребителя име, което се предава на получателя, изпратил имейла. Можете да използвате „SQL Server Agent“ или подобен, в зависимост от вашата настройка.
Синтаксис
Горният пример не включва всички налични опции.
Официалният синтаксис е така:
sysmail_add_account_sp [ @account_name = ] 'account_name',
[ @email_address = ] 'email_address' ,
[ [ @display_name = ] 'display_name' , ]
[ [ @replyto_address = ] 'replyto_address' , ]
[ [ @description = ] 'description' , ]
[ @mailserver_name = ] 'server_name'
[ , [ @mailserver_type = ] 'server_type' ]
[ , [ @port = ] port_number ]
[ , [ @username = ] 'username' ]
[ , [ @password = ] 'password' ]
[ , [ @use_default_credentials = ] use_default_credentials ]
[ , [ @enable_ssl = ] enable_ssl ]
[ , [ @account_id = ] account_id OUTPUT ]
Вижте документацията на Microsoft за подробно обяснение на всеки аргумент. Можете да използвате аргументите, които отговарят на вашата ситуация.
Можете също да използвате sysmail_update_account_sp
съхранена процедура за актуализиране на съществуващ акаунт в базата данни.
Конфигуриране на поща от база данни
Създаването на акаунт в база данни е само едно от няколкото неща, които трябва да направите, преди да можете да изпращате имейл с този акаунт.
След като създадете акаунта, ще трябва да го добавите към профил (което означава, че също ще трябва да създадете профил, ако все още нямате такъв). Ще трябва също да предоставите потребител в msdb достъп до базата данни до профила.
Вижте Как да изпращате имейл в SQL Server за пълен пример за конфигуриране на Database Mail, след което изпращане на имейл.