So wählen Sie das E-Mail-Profil in einem SQL Agent-Job aus

8

Ich habe mehrere E-Mail-Profile auf dem SQL Agent konfiguriert. Wie kann ich auswählen, welches dieser Profile zum Versenden von Benachrichtigungen für einen bestimmten SQL Agent-Job verwendet wird?

nojetlag
quelle
Fragen Sie sich, wie es tatsächlich geht oder welches Sie tatsächlich auswählen sollen und warum?
Ich frage, wie es in einem SQL Agent-Job tatsächlich gemacht wird. Ich kann keine Möglichkeit finden, pro Job anzugeben, welches E-Mail-Profil verwendet werden soll. Da Sie in diesen SQL Agent-Jobs nur das Dialogfeld "Benachrichtigungen" haben, in dem Sie den Empfänger und nicht den Absender angeben können (was vermutlich der Zweck des Profils wäre).
Nojetlag

Antworten:

7

Datenbank-Mail-Profile funktionieren bei SQL Agent-Jobs etwas anders. Wenn Sie SQL Agent selbst über das Eigenschaftenfenster konfigurieren, konfigurieren Sie das Warnsystem . Geben Sie hier die Bildbeschreibung ein

Die beiden Pfeile zeigen an, wo ein Datenbank-Mail-Profil ausgewählt werden kann. In diesen beiden Fällen teilt das von Ihnen ausgewählte Profil SQL Agent im Wesentlichen mit, dass dies Ihre SMTP-Konfiguration ist und an wen Sie die E-Mails "als" oder das Feld "VON" senden möchten. Zum Konfigurieren des Warnsystems muss der SQL Agent-Dienst neu gestartet werden.

Sobald dies erledigt ist, um Benachrichtigungen für SQL Agent-Jobs zu erhalten, müssen Sie die Operatoren konfigurieren .

Geben Sie hier die Bildbeschreibung ein

Sie würden den Operator so einrichten, dass er notiert, an wen die Benachrichtigung "TO" gesendet werden soll. Sie können mehr als eine E-Mail-Adresse in dieses Feld eingeben, es gibt jedoch eine Zeichenbeschränkung. Sie können mehrere Operatoren erstellen, aber auf der Benachrichtigungsseite der Job-Eigenschaften werden Sie feststellen, dass Sie nur einen auswählen können. Dies ist nur die Einschränkung von SQL Agent.

Die Alternative dazu wäre die Verwendung des sp_send_db_mailinnerhalb des Jobschritts selbst. In diesem Fall können Sie ein beliebiges E-Mail-Profil verwenden, falls es an eine andere Person als einen von Ihnen konfigurierten Operator gesendet werden soll.


quelle
4

Sie können das profile_namein sp_send_dbmailwie folgt angeben :

EXEC msdb.dbo.sp_send_dbmail
    @profile_name = 'here goes your profile  name'

Weitere Informationen finden Sie in BOL .

Sie können die Konten, die einem oder mehreren Datenbank-Mail-Profilen zugeordnet sind, mit sysmail_help_profileaccount_sp auflisten

Unten ist das t-sql, das Ihnen alle Details gibt:

SELECT  [sa].[account_id]
, [sa].[name] as [Profile_Name]
, [sa].[description]
, [sa].[email_address]
, [sa].[display_name]
, [sa].[replyto_address]
, [ss].[servertype]
, [ss].[servername]
, [ss].[port]
, [ss].[username]
, [ss].[use_default_credentials]
, [ss].[enable_ssl]
FROM 
 msdb.dbo.sysmail_account sa
INNER JOIN msdb.dbo.sysmail_server ss
ON  sa.account_id = ss.account_id
Kin Shah
quelle