

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Utilisation de Database Mail sur Amazon RDS for SQL Server
<a name="SQLServer.DBMail"></a>

Vous pouvez utiliser Database Mail pour envoyer des e-mails à des utilisateurs à partir de votre instance de base de données Amazon RDS sur SQL Server. Les messages peuvent contenir des fichiers et des résultats de requête. Database Mail comprend les éléments suivants :
+ **Objets de configuration et de sécurité** – Ces objets créent des profils et des comptes, et sont stockés dans la base de données `msdb`.
+ **Objets de messagerie** – Ces objets incluent la procédure stockée [sp\$1send\$1dbmail](https://docs.microsoft.com/en-us/sql/relational-databases/system-stored-procedures/sp-send-dbmail-transact-sql) utilisée pour envoyer des messages, ainsi que des structures de données contenant des informations sur les messages. Ils sont stockés dans la base de données `msdb`.
+ **Objets de journalisation et d'audit** – Database Mail écrit les informations de journalisation dans la base de données `msdb` et dans le journal des événements de l'application Microsoft Windows.
+ Le **fichier exécutable de Database Mail** – `DatabaseMail.exe` lit le contenu d'une file d'attente de la base de données `msdb` et envoie les e-mails.

RDS prend en charge Database Mail pour toutes les versions de SQL Server sur les éditions Web, Standard et Enterprise.

## Limitations
<a name="SQLServer.DBMail.Limitations"></a>

Les limites suivantes s'appliquent à l'utilisation de Database Mail sur votre instance de base de données SQL Server :
+ Database Mail n'est pas pris en charge pour SQL Server Express Edition.
+ La modification des paramètres de configuration de Database Mail n'est pas prise en charge. Pour afficher les valeurs prédéfinies (par défaut), vous devez utiliser la procédure stockée [sysmail\$1help\$1configure\$1sp](https://docs.microsoft.com/en-us/sql/relational-databases/system-stored-procedures/sysmail-help-configure-sp-transact-sql).
+ Les pièces jointes ne sont pas entièrement prises en charge. Pour plus d'informations, consultez [Utilisation de pièces jointes](#SQLServer.DBMail.Files).
+ La taille maximale des pièces jointes est de 1 Mo.
+ Database Mail requiert une configuration supplémentaire sur les instances de base de données multi-AZ. Pour plus d'informations, consultez [Considérations sur les déploiements multi-AZ](#SQLServer.DBMail.MAZ).
+ La configuration de SQL Server Agent pour envoyer des e-mails à des opérateurs prédéfinis n'est pas prise en charge.

## Fonctions et procédures stockées Amazon RDS pour Database Mail
<a name="SQLServer.DBMail.StoredProc"></a>

Microsoft fournit des [procédures stockées](https://docs.microsoft.com/en-us/sql/relational-databases/system-stored-procedures/database-mail-stored-procedures-transact-sql) pour utiliser Database Mail, comme la création, la présentation en listes, la mise à jour et la suppression de comptes et de profils. En outre, RDS fournit les fonctions et procédures stockées Database Mail présentées dans le tableau suivant.


| Procédure/Fonction | Description | 
| --- | --- | 
| rds\$1fn\$1sysmail\$1allitems | Affiche les messages envoyés, y compris ceux envoyés par d'autres utilisateurs. | 
| rds\$1fn\$1sysmail\$1event\$1log | Affiche les événements, y compris ceux des messages envoyés par d'autres utilisateurs. | 
| rds\$1fn\$1sysmail\$1mailattachments | Affiche les pièces jointes, y compris celles des messages envoyés par d'autres utilisateurs. | 
| rds\$1sysmail\$1control | Lance et arrête la file d'attente de la messagerie (processus DatabaseMail.exe). | 
| rds\$1sysmail\$1delete\$1mailitems\$1sp | Supprime des tables internes de Database Mail les e-mails envoyés par l'ensemble des utilisateurs. | 

## Utilisation de pièces jointes
<a name="SQLServer.DBMail.Files"></a>

Les extensions de pièces jointes suivantes ne sont pas prises en charge dans les messages Database Mail à partir de RDS sur SQL Server : .ade, .adp, .apk, .appx, .appxbundle, .bat, .bak, .cab, .chm, .cmd, .com, .cpl, .dll, .dmg, .exe, .hta, .inf1, .ins, .isp, .iso, .jar, .job, .js, .jse, .ldf, .lib, .lnk, .mde, .mdf, .msc, .msi, .msix, .msixbundle, .msp, .mst, .nsh, .pif, .ps, .ps1, .psc1, .reg, .rgs, .scr, .sct, .shb, .shs, .svg, .sys, .u3p, .vb, .vbe, .vbs, .vbscript, .vxd, .ws, .wsc, .wsf et .wsh.

Database Mail utilise le contexte de sécurité Microsoft Windows de l'utilisateur actuel pour contrôler l'accès aux fichiers. Les utilisateurs qui se connectent avec l'authentification SQL Server ne peuvent pas joindre de fichiers à l'aide du paramètre `@file_attachments` avec la procédure stockée `sp_send_dbmail`. Windows n'autorise pas SQL Server à fournir des informations d'identification d'un ordinateur distant à un autre ordinateur distant. Par conséquent, Database Mail ne peut pas joindre des fichiers provenant d'un partage réseau lorsque la commande est exécutée à partir d'un ordinateur autre que celui qui exécute SQL Server.

Vous pouvez toutefois utiliser des tâches SQL Server Agent pour joindre des fichiers. Pour plus d'informations sur SQL Server Agent, consultez [Utilisation de SQL Server Agent pour Amazon RDS](Appendix.SQLServer.CommonDBATasks.Agent.md) et [SQL Server Agent](https://docs.microsoft.com/en-us/sql/ssms/agent/sql-server-agent) dans la documentation Microsoft.

## Considérations sur les déploiements multi-AZ
<a name="SQLServer.DBMail.MAZ"></a>

Lorsque vous configurez Database Mail sur une instance de base de données multi-AZ, la configuration n'est pas automatiquement propagée vers la zone secondaire. Nous vous recommandons de convertir l'instance multi-AZ en instance mono-AZ, de configurer Database Mail, puis de reconvertir l'instance de base de données en instance multi-AZ. Les nœuds principal et secondaire disposeront ensuite de la configuration de Database Mail.

Si vous créez un réplica en lecture à partir de l'instance multi-AZ sur laquelle Database Mail est configuré, le réplica hérite de la configuration, mais sans le mot de passe du serveur SMTP. Mettez à jour le compte Database Mail avec le mot de passe.

## Suppression de la restriction SMTP (port 25)
<a name="SQLServer.DBMail.SMTP"></a>

AWS bloque par défaut le trafic sortant sur SMTP (port 25) pour les instances de base de données RDS for SQL Server. Cela permet d’éviter le spam en fonction des politiques du propriétaire de l’interface réseau Elastic. Vous pouvez supprimer cette restriction si nécessaire. Pour plus d’informations, consultez [Comment supprimer la restriction du port 25 à partir de mon instance Amazon EC2 ou de ma fonction Lambda ?](https://repost.aws/knowledge-center/ec2-port-25-throttle). 