Messagerie de base de données

La messagerie de base de données est une solution d'entreprise qui permet l'envoi de messages électroniques à partir du Moteur de base de données SQL Server. Grâce à la messagerie de base de données, vos applications de bases de données peuvent envoyer des messages électroniques aux utilisateurs. Ces messages peuvent contenir les résultats d'une requête, voire des fichiers de n'importe quelle ressource de votre réseau. La messagerie de base de données est fiable, évolutive, sûre et facilement prise en charge.

Remarque relative à la sécuritéRemarque relative à la sécurité

La messagerie de base de données n'est pas active par défaut. Pour utiliser la messagerie de base de données, vous devez explicitement l'activer en utilisant l'Assistant Configuration de la messagerie de base de données, la procédure stockée sp_configure ou la facette Configuration de la surface d'exposition de la gestion basée sur des stratégies.

Fiabilité

  • La messagerie de base de données n'a pas besoin de Microsoft Outlook ni de l'interface étendue de programmation d'applications de messagerie (MAPI étendu). Elle utilise le protocole SMTP (Simple Mail Transfer Protocol) standard pour l'envoi de messages. Vous pouvez l'utiliser sans installer le client MAPI étendu sur l'ordinateur qui exécute SQL Server.

  • Isolement du processus. Pour minimiser l'impact sur SQL Server, le composant qui envoie les messages s'exécute en dehors de SQL Server, dans un processus séparé. En cas d'arrêt ou d'échec de ce processus externe, SQL Server continuera à mettre ses messages dans la file d'attente. Ces messages seront envoyés une fois que le processus extérieur est rétabli ou que le serveur SMTP est en ligne.

  • Comptes de basculement. Un profil de messagerie de base de données vous permet de spécifier plusieurs serveurs SMTP. Si l'un deux est indisponible, le courrier est envoyé vers un autre serveur.

  • Prise en charge de cluster. La messagerie de base de données peut être installée sur un cluster.

Évolutivité

  • Remise à l'arrière-plan. La messagerie de base de données assure la remise à l'arrière-plan ou asynchrone du courrier électronique. Lorsque vous appelez sp_send_dbmail pour envoyer un message, la messagerie de base de données ajoute une demande dans une file d'attente du Service Broker. La procédure stockée est immédiatement retournée. Le composant de messagerie externe reçoit la demande et transmet le courrier électronique.

  • Plusieurs profils. La messagerie de base de données vous permet de créer plusieurs profils dans une même instance SQL Server. Vous pouvez également choisir le profil que la messagerie de base de données utilise lorsque vous envoyez un message.

  • Plusieurs comptes. Chaque profil peut contenir plusieurs comptes de basculement. Vous pouvez configurer différents profils avec différents comptes afin de distribuer le courrier électronique vers plusieurs serveurs de messagerie.

  • Compatibilité 64 bits. La messagerie de base de données est entièrement compatible avec les installations 64 bits de SQL Server.

Sécurité

  • Désactivée par défaut. Pour réduire la zone de surface de SQL Server, les procédures stockées de la messagerie de base de données sont désactivées par défaut.

  • Pour envoyer un message de messagerie de base de données, vous devez être membre du rôle de base de données DatabaseMailUserRole de la base de données msdb.

  • Sécurité du profil. La messagerie de base de données garantit la sécurité des profils de messagerie. Vous choisissez les utilisateurs ou les groupes de la base de données msdb qui ont accès à un profil de messagerie de base de données. Vous pouvez autoriser cet accès à certains utilisateurs en particulier, ou à tous les utilisateurs de msdb. Un profil privé limite l'accès à une liste d'utilisateurs. Un profil public autorise l'accès à tous les utilisateurs d'une base de données.

  • Administrateur de taille des pièces jointes. La messagerie de base de données limite la taille des fichiers joints (limite configurable). Vous pouvez modifier cette limite en utilisant la procédure stockée sysmail_configure_sp.

  • Extensions de fichiers interdites. La messagerie de base de données maintient une liste d'extensions de fichiers interdites. Les utilisateurs ne peuvent pas joindre de fichiers dont l'extension figure dans la liste. Vous pouvez modifier cette liste à l'aide de sysmail_configure_sp.

  • La messagerie de base de données s'exécute sous le compte de service du moteur SQL Server. Pour joindre un fichier d'un dossier à un message électronique, le compte du moteur SQL Server doit disposer des autorisations d'accès au dossier.

Prise en charge

  • Configuration intégrée. La messagerie de base de données maintient les informations des comptes de messagerie dans le moteur de base de données SQL Server. Il n'est pas nécessaire de gérer un profil de messagerie dans une application cliente externe. L'Assistant Configuration de la messagerie de base de données offre une interface pratique pour la configuration de la messagerie de base de données. Vous pouvez également créer et maintenir vos configurations au moyen de Transact-SQL.

  • Journalisation. La messagerie de base de données journalise l'activité de messagerie dans SQL Server, dans le journal des événements des applications Microsoft Windows et dans les tables de la base de données msdb.

  • Audit. La messagerie de base de données conserve des copies des messages et des pièces jointes envoyés dans la base de données msdb. Vous pouvez facilement contrôler l'utilisation de la messagerie et consulter les messages conservés.

  • Prise en charge du HTML. La messagerie de base de données vous permet d'envoyer des messages au format HTML.

La messagerie de base de données offre une solution de remplacement robuste et hautement performante aux fonctions les plus fréquemment demandées de SQL Mail. Elle est conçue pour fonctionner avec des serveurs SMTP et a été testée avec des serveurs SMTP Microsoft. Pour des informations sur la conversion d'une procédure stockée SQL Mail en procédure de messagerie de base de données, consultez Procédure : convertir des procédures stockées de SQL Mail vers la messagerie de base de données (Transact-SQL).

Notes

La messagerie de base de données n'est pas disponible dans SQL Server Express.