In SQL Server können Sie den sysmail_help_queue_sp
verwenden gespeicherte Prozedur in der msdb
Datenbank, um zu sehen, wie viele E-Mail-Elemente sich in der Warteschlange befinden, den Status der Warteschlange und wann sie zuletzt aktiviert wurde.
Es gibt zwei Arten von Warteschlangen:die Mail-Warteschlange und die Status-Warteschlange.
Sie können Kontoinformationen auch basierend auf dem Warteschlangentyp zurückgeben.
Alle Elemente in der Warteschlange zurückgeben
Um alle Elemente aus der Warteschlange zurückzugeben, führen Sie einfach die gespeicherte Prozedur ohne Parameter aus.
EXEC msdb.dbo.sysmail_help_queue_sp;
Ergebnis (bei vertikaler Ausgabe):
-[ RECORD 1 ]------------------------- queue_type | mail length | 0 state | INACTIVE last_empty_rowset_time | 2020-08-25 22:25:02.637 last_activated_time | 2020-08-25 22:25:02.637 -[ RECORD 2 ]------------------------- queue_type | status length | 0 state | INACTIVE last_empty_rowset_time | 2020-08-25 22:25:02.637 last_activated_time | 2020-08-25 22:25:02.637
Ich habe die Ergebnisse mit vertikaler Ausgabe aufgelistet, damit Sie nicht seitwärts scrollen müssen, um alle Spalten zu sehen.
In meinem Fall befinden sich zwei E-Mail-Elemente in der Warteschlange, daher werden zwei Zeilen zurückgegeben.
Die last_empty_rowset_time
Spalte enthält das Datum und die Uhrzeit, wann die Warteschlange zuletzt leer war.
Die last_activated_time
Spalte enthält Datum und Uhrzeit der letzten Aktivierung der Warteschlange.
Beachten Sie, dass die Datei sysmail_help_queue_sp
gespeicherte Prozedur befindet sich in der msdb
Datenbank und gehört dem dbo
Schema. Daher müssen Sie eine dreiteilige Benennung verwenden, wenn msdb
ist nicht die aktuelle Datenbank.
Nach Warteschlangentyp filtern
Wie bereits erwähnt, gibt es zwei Arten von Warteschlangen (Mail und Status). Sie können Elemente auch basierend auf ihrem Warteschlangentyp zurückgeben.
Geben Sie dazu den @queue_type
an Parameter und geben Sie Ihren gewünschten Warteschlangentyp an.
Um alle Artikel aus der Post zurückzusenden Warteschlange:
EXEC msdb.dbo.sysmail_help_queue_sp
@queue_type = 'mail';
Ergebnis:
queue_type | mail length | 0 state | INACTIVE last_empty_rowset_time | 2020-08-25 22:25:02.637 last_activated_time | 2020-08-25 22:25:02.637
Um alle Artikel aus dem Status zurückzugeben Warteschlange:
EXEC msdb.dbo.sysmail_help_queue_sp
@queue_type = 'status';
Ergebnis:
queue_type | status length | 0 state | INACTIVE last_empty_rowset_time | 2020-08-25 22:25:02.637 last_activated_time | 2020-08-25 22:25:02.637