[SQL Server] Messagerie : présentation et configuration du Database Mail

Ce billet explique comment configurer le Database Mail.

Présentation du Database Mail

Le Database Mail (SQL Mail, avant SQL Server 2005) est un système d’envoi de messages. Les messages utilisés sont stockés dans une file au sein de la base de données msdb, en attente de traitement.

Lorsqu’un message est placé dans la file d’attente, un processus de messagerie externe est lancé par SQL Server afin d’envoyer ledit message vers le serveur de messagerie adéquat. Et après l’envoi du message, une notification de réussite ou d’échec est envoyée à SQL Server lui-même.

Modus operandi de la configuration du Database Mail

Au sein de l’explorateur d’objets de SSMS, faites dépilez Management, puis double-cliquez sur Database Mail (ou clic-droit, puis Configure Database Mail) :


Une fenêtre de bienvenue s’ouvrira :


Cliquez sur Next >, puis suivez les étapes suivantes :

  • Sélection de la tâche de configuration.


Choisissez Set up Database Mail by performing the following tasks (…),
puis cliquez sur Next >.

Cette option est utile si – comme dans notre exemple – le Database Mail n’a pas été préalablement créé. La boîte de dialogue ci-dessous s’affichera.


Cliquez sur Yes.

Notons que le Database Mail peut également être activé via sp_configure:

sp_configure 'show advanced options', 1
GO
RECONFIGURE
GO
sp_configure 'Database Mail XPs', 1
GO
RECONFIGURE
GO
  • Création d’un profil.

Spécifiez le nom du profil à créer (et sa description éventuelle), puis cliquez sur le bouton Add… :


Une boîte modale relative à la création d’un profil s’ouvrira. Fenêtre au sein de laquelle doivent être spécifiés le nom du compte, l’email, les informations relatives au service SMTP (adresse, authentification de base,…)… :


La validation de la configuration donnera l’aperçu suivant :


La création d’un compte Database Mail (ici Mac) permet de définir comment SQL Server doit communiquer avec un serveur SMTP pour l’envoi d’un message. Un tel compte n’a rien à voir avec un login SQL Server.

Cliquez alors sur Next> pour passer à l’étape suivante.

A ce stade, il est possible d’ajouter des adresses mails supplémentaires pour un même profil créé.
  • Gestion de la sécurité des profils.

A cette étape, vous pouvez choisir le type de profil créé : public (accessible pour tous les utilisateurs de l’instance pouvant utiliser msdb) ou privé (accessible pour un nombre restreint d’utilisateurs). Dans notre contexte, le type Public a été sélectionné (premier onglet), et le profil a été choisi comme profil par défaut.


Si vous optez pour le type privé (onglet Private Profiles), le choix de l’utilisateur (User name)
doit être effectué :


  • Configuration des paramètres système.

Les paramètres système sont définis à cette étape :

  • Account Retry Attempts : nombre de tentatives d’envoi d’un mail à partir de chaque compte d’un même profil. Par exemple, si la valeur de paramètre est à 5 et que l’on possède 2 comptes pour un profil, alors pour ledit profil, il y aura 5 x 2 tentatives d’envoi.
  • Account Retry Delay (Seconds) : temps d’attente (en secondes) entre chaque tentative d’envoi d’un mail pour tous les comptes d’un profil.
  • Maximum File Size (Bytes) : taille limite (en octets) d’une pièce jointe.
  • Prohibited Attachment File Extensions : liste d’extensions (séparées par une virgule) d’un fichier interdites lors de l’envoi d’un mail.
  • Database Mail Executable Minimum Lifetime (Seconds) : temps minimum (en secondes) au cours duquel le processus de messagerie externe reste opérationnel, si aucun mail n’est présent dans la file d’attente du Database Mail.
  • Logging Level : il s’agit du nouveau de journalisation des événements associés au Database Mail :
    • Normal : journalisation des messages d’erreur.
    • Extended : idem que Normal, plus des avertissements et messages d’information. Il s’agit du mode de journalisation par défaut.
    • Verbose : idem qu’Extented, mais avec en plus, les messages de réussite et ceux internes. Idéal pour la résolution d’éventuels problèmes de messagerie.


Cliquez sur Next>.

  • Validation de la configuration du Database Mail.


Un clic sur Finish donnera le résultat suivant (si tout va bien) :


Pour tester la configuration, vous pouvez, au sein de l’explorateur d’objets, faire un clic-droit sur la sous-section Database Mail de Maintenance, puis sélectionner Send Test E-Mail… :


Indiquez l’adresse mail de destination qui recevra le mail envoyé par le profil Mac préalablement créé :


Le message sera mis dans la file d’attente du Database Mail, puis envoyé :


Pour aller plus loin…

Ce billet a permis de montrer à quel point configurer le Database Mail est très simple. Gardez un œil ici pour d’autres billets relatifs au sujet, comme la notification d’alertes par mail.

Publicités

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s