Užitečnou funkcí SQL Serveru 2008 je možnost odesílat emaily přímo z prostředí databázového serveru, a to pomocí nástroje Database Mail. Správce serveru či jednotlivých databází tak mohou být emailem informování o chybách serveru, naplnění logovacích souborů či mnoha jiných událostech, které mohou nastat při běhu databáze. Dnes se pokusím ukázat co vše je potřeba učinit, aby bylo možno z SQL Serveru odesílat emaily.

V prvé řadě je třeba povolit samotný Database Mail, který je ve výchozím nastavení vypnutý.

SQL:
sp_CONFIGURE 'show advanced', 1
GO
RECONFIGURE
GO
sp_CONFIGURE 'Database Mail XPs', 1
GO
RECONFIGURE
GO

Nyní je třeba vytvořit nový profil a přiřadit k němu údaje o SMTP serveru.
V kontextové nabídce Management/Database Mail zvolíme možnost 'Configure Database Mail', čímž spustíme průvodce nastavením. Hned po úvodní obrazovce zvolíme první možnost, která nás provede vytvořením nového profilu, nastavením SMTP účtu a nakonec systémovým nastavením Database Mail.

Kontextová nabídka Database Mail Možnosti v průvodci nastavení

Samotný profil obsahuje jen název a případný popis. To podstatné je, že k němu náleží jeden či více účtů pro odchozí poštu. Každý takovů účet musí obsahovat své jméno, adresu, která bude uvedena jako odesílatel, jméno odesílatele a jméno SMTP serveru. Případně údaje pro ověření na serveru. Na další obrazovce je možno zvolit, zda bude profil veřejný, nebo k němu bude mít přístup jen konkrétní uživatel.

Vytvoření profilu Nastavení SMTP účtu Profil s přiřazeným SMTP účtem Volba public / private profilu

Následuje nastavení několika systémových parametrů a práce s průvodcem je u konce.
Nastavení systémových proměnných

V tuto chíli je vše připraveno k odeslání emailu pomocí procedury sp_send_dbmail.

SQL:
EXEC msdb.dbo.sp_send_dbmail
    @profile_name = 'pokusProfil',
    @recipients = 'pokus@weboveaplikace.info',
    @subject = 'Pokus Email',
    @body = 'Zkušební email z MS SQL Server 2008'

Doručený email