Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:SQL Server
Verwenden Sie den Assistenten zum Konfigurieren von Datenbank-E-Mail oder Transact-SQL, um öffentliche und private Datenbank-E-Mail-Profile zu erstellen. Weitere Informationen zu E-Mail-Profilen finden Sie unter Database Mail Configuration Objects.
Tipp
Das Erstellen eines Datenbank-E-Mail-Profils ist in Azure SQL Managed Instance nicht erforderlich, da diese bereits für die Suche nach einem Profil namens AzureManagedInstance_dbmail_profile
konfiguriert ist. Weitere Informationen und ein Beispielskript finden Sie unter Azure SQL Managed Instance SQL-Agent-Auftragsbenachrichtigungen.
Voraussetzungen
Erstellen Sie mindestens ein Datenbank-E-Mail-Konto für das Profil. Weitere Informationen zum Erstellen von Datenbank-E-Mail-Konten finden Sie unter Erstellen eines Kontos für Datenbank-E-Mail.
Sicherheit
Mit einem öffentlichen Profil kann jeder Benutzer mit Zugriff auf die msdb
-Datenbank E-Mail mithilfe dieses Profils senden. Ein privates Profil kann von einem Benutzer oder einer Rolle verwendet werden. Durch Gewähren des Rollenzugriffs auf Profile wird eine leichter zu verwaltende Architektur geschaffen. Um E-Mail zu senden, müssen Sie Mitglied der DatabaseMailUserRole in der msdb
-Datenbank sein und Zugriff auf mindestens ein Datenbankprofil besitzen.
Berechtigungen
Der Benutzer, der die Profilkonten erstellt und gespeicherte Prozeduren ausführt, sollte Mitglied der festen Serverrolle "sysadmin" sein.
Verwenden des Datenbank-E-Mail-Konfigurations-Assistenten zum Erstellen eines Datenbank-E-Mail-Profils
In den folgenden Schritten wird hierzu SQL Server Management Studio (SSMS) verwendet: Laden Sie die neueste Version von SSMS unter aka.ms/ssms herunter.
Stellen Sie im Objekt-Explorer eine Verbindung mit der SQL Server-Instanz her, in der Sie Datenbank-E-Mail konfigurieren möchten, und erweitern Sie die Serverstruktur.
Erweitern Sie den Knoten Verwaltung .
Doppelklicken Sie auf Datenbank-E-Mail , um den Datenbank-E-Mail-Konfigurations-Assistenten zu öffnen.
Aktivieren Sie auf der Seite Konfigurationsaufgabe auswählen die Option Konten und Profile für Datenbank-E-Mail verwalten, und klicken Sie auf Weiter.
Aktivieren Sie auf der Seite Profile und Konten verwalten, aktivieren Sie die Option Neues Profil erstellen, und wählen Sie Weiter.
Geben Sie auf der Seite Neues Profil den Profilnamen und die Beschreibung ein, und fügen Sie die ins Profil einzuschließenden Konten hinzu. Wählen Sie anschließend Weiter.
Überprüfen Sie auf der Seite Assistenten abschließen die auszuführenden Aktionen, und wählen Sie Fertig stellen, um die Erstellung des neuen Profils abzuschließen.
So konfigurieren Sie ein privates Datenbank-E-Mail-Profil
Öffnen Sie den Assistenten zum Konfigurieren von Datenbank-E-Mail.
Aktivieren Sie auf der Seite Konfigurationsaufgabe auswählen die Option Konten und Profile für Datenbank-E-Mail verwalten , und wählen Sie Weiter.
Aktivieren Sie auf der Seite Profile und Konten verwalten die Option Profilsicherheit verwalten, und wählen Sie Weiter.
Aktivieren Sie auf der Registerkarte Private Profile das Kontrollkästchen für das zu konfigurierende Profil, und wählen Sie Weiter.
Überprüfen Sie auf der Seite Assistenten abschließen die auszuführenden Aktionen, und wählen Sie Fertig stellen , um die Konfiguration des Profils abzuschließen.
So konfigurieren Sie ein öffentliches Datenbank-E-Mail-Profil
Öffnen Sie den Assistenten zum Konfigurieren von Datenbank-E-Mail.
Aktivieren Sie auf der Seite Konfigurationsaufgabe auswählen die Option Konten und Profile für Datenbank-E-Mail verwalten , und wählen Sie Weiter.
Aktivieren Sie auf der Seite Profile und Konten verwalten die Option Profilsicherheit verwalten, und wählen Sie Weiter.
Aktivieren Sie auf der Registerkarte Öffentliche Profile das Kontrollkästchen für das zu konfigurierende Profil, und wählen Sie Weiter.
Überprüfen Sie auf der Seite Assistenten abschließen die auszuführenden Aktionen, und wählen Sie Fertig stellen , um die Konfiguration des Profils abzuschließen.
Verwenden von Transact-SQL zum Erstellen eines Datenbank-E-Mail-Profils
Verwenden Sie ZUM Ausführen von T-SQL-Befehlen auf Ihrer SQL Server-Instanz SQL Server Management Studio (SSMS), die MSSQL-Erweiterung für Visual Studio Code, sqlcmd oder Ihr bevorzugtes T-SQL-Abfragetool.
Erstellen eines privaten Datenbank-E-Mail-Profils mit T-SQL
Stellen Sie eine Verbindung mit der SQL Server-Instanz her. Öffnen Sie ein neues Abfragefenster.
Führen Sie zum Erstellen eines neuen Profils die gespeicherte Systemprozedur sysmail_add_profile_sp aus:
EXECUTE msdb.dbo.sysmail_add_profile_sp @profile_name = 'Profile Name' , @description = 'Description';
Im vorherigen Skript
@profile_name
ist der Name des Profils und@description
eine optionale benutzerfreundliche Beschreibung des Profils.Führen Sie für jedes Konto die gespeicherte Systemprozedur sysmail_add_profileaccount_sp aus:
EXECUTE msdb.dbo.sysmail_add_profileaccount_sp @profile_name = 'Profile Name' , @account_name = 'Name of the account' , @sequence_number = 'sequence number of the account within the profile.';
Im vorherigen Beispielskript
@profile_name
ist der Name des Profils und@account_name
der Name des Kontos, das dem Profil hinzugefügt werden soll,@sequence_number
bestimmt die Reihenfolge, in der die Konten im Profil verwendet werden.Erteilen Sie für jede Datenbankrolle oder jeden Benutzer, der E-Mails über dieses Profil sendet, Zugriff auf das Profil. Führen Sie dazu die gespeicherte Systemprozedur sysmail_add_principalprofile_sp aus:
EXECUTE msdb.dbo.sysmail_add_principalprofile_sp @profile_name = 'Name of the profile' , @principal_name = 'Name of the database user or role' , @is_default = 'Default profile enabled';
Im vorherigen Beispielskript
@profile_name
ist der Name des Profils,@principal_name
der Name des Datenbankbenutzers oder der Datenbankrolle und@is_default
bestimmt, ob dieses Profil der Standard für den Datenbankbenutzer oder die Datenbankrolle ist.
Im folgenden Beispiel werden ein Datenbank-E-Mail-Konto und ein privates Konto für Datenbank-E-Mail erstellt. Anschließend wird das Konto zum Profil hinzugefügt und der Datenbankrolle DBMailUsers in der msdb
-Datenbank Zugriff auf das Profil erteilt.
-- Create a Database Mail account
EXECUTE msdb.dbo.sysmail_add_account_sp
@account_name = 'AdventureWorks Administrator',
@description = 'Mail account for administrative e-mail.',
@email_address = 'dba@Adventure-Works.com',
@replyto_address = 'danw@Adventure-Works.com',
@display_name = 'AdventureWorks Automated Mailer',
@mailserver_name = 'smtp.Adventure-Works.com' ;
-- Create a Database Mail profile
EXECUTE msdb.dbo.sysmail_add_profile_sp
@profile_name = 'AdventureWorks Administrator Profile',
@description = 'Profile used for administrative mail.' ;
-- Add the account to the profile
EXECUTE msdb.dbo.sysmail_add_profileaccount_sp
@profile_name = 'AdventureWorks Administrator Profile',
@account_name = 'AdventureWorks Administrator',
@sequence_number =1 ;
-- Grant access to the profile to the DBMailUsers role
EXECUTE msdb.dbo.sysmail_add_principalprofile_sp
@profile_name = 'AdventureWorks Administrator Profile',
@principal_name = 'ApplicationUser',
@is_default = 1 ;
Erstellen eines öffentlichen Datenbank-Mail-Profils mit T-SQL
Stellen Sie eine Verbindung mit der SQL Server-Instanz her. Öffnen Sie ein neues Abfragefenster.
Führen Sie zum Erstellen eines neuen Profils die gespeicherte Systemprozedur sysmail_add_profile_sp (Transact-SQL) aus:
EXECUTE msdb.dbo.sysmail_add_profile_sp @profile_name = 'Profile Name' , @description = 'Description';
Im vorherigen Skript
@profile_name
ist der Name des Profils und@description
eine optionale Beschreibung des Profils.Führen Sie für jedes Konto die gespeicherte Prozedur sysmail_add_profileaccount_sp (Transact-SQL) aus:
EXECUTE msdb.dbo.sysmail_add_profileaccount_sp @profile_name = 'Name of the profile' , @account_name* = 'Name of the account' , @sequence_number* = 'sequence number of the account within the profile.'
Im vorherigen Beispielskript
@profile_name
ist der Name des Profils und@account_name
der Name des Kontos, das dem Profil hinzugefügt werden soll,@sequence_number
bestimmt die Reihenfolge, in der die Konten im Profil verwendet werden.Führen Sie zum Gewähren des öffentlichen Zugriffs die gespeicherte Prozedur sysmail_add_principalprofile_sp (Transact-SQL) aus:
EXECUTE msdb.dbo.sysmail_add_principalprofile_sp @profile_name = 'Name of the profile' , @principal_name = 'public or 0' , @is_default = 'Default Profile enabled';
Im vorherigen Beispielskript ist
@profile_name
der Name des Profils, und@principal_name
gibt an, dass es sich um ein öffentliches Profil handelt.@is_default
bestimmt, ob dieses Profil der Standard für den Datenbankbenutzer oder die Datenbankrolle ist.
Im folgenden Beispiel werden ein Datenbank-E-Mail-Konto und ein privates Profil für Datenbank-E-Mail erstellt. Anschließend wird das Konto zum Profil hinzugefügt und öffentlicher Zugriff auf das Profil erteilt.
-- Create a Database Mail account
EXECUTE msdb.dbo.sysmail_add_account_sp
@account_name = 'AdventureWorks Public Account',
@description = 'Mail account for use by all database users.',
@email_address = 'db_users@Adventure-Works.com',
@replyto_address = 'danw@Adventure-Works.com',
@display_name = 'AdventureWorks Automated Mailer',
@mailserver_name = 'smtp.Adventure-Works.com' ;
-- Create a Database Mail profile
EXECUTE msdb.dbo.sysmail_add_profile_sp
@profile_name = 'AdventureWorks Public Profile',
@description = 'Profile used for administrative mail.' ;
-- Add the account to the profile
EXECUTE msdb.dbo.sysmail_add_profileaccount_sp
@profile_name = 'AdventureWorks Public Profile',
@account_name = 'AdventureWorks Public Account',
@sequence_number =1 ;
-- Grant access to the profile to all users in the msdb database
EXECUTE msdb.dbo.sysmail_add_principalprofile_sp
@profile_name = 'AdventureWorks Public Profile',
@principal_name = 'public',
@is_default = 1 ;