Když používáte Database Mail k odesílání e-mailů na SQL Server, můžete použít sysmail_delete_log_sp
uložená procedura k odstranění položek z protokolu událostí.
Můžete se rozhodnout smazat všechny události, události založené na jejich zaznamenaném datu (tj. před určitým datem) nebo události založené na typu události.
Zobrazit všechny události
Než začnete nějaké události mazat, možná se na ně budete chtít podívat. Můžete to udělat pomocí sysmail_event_log
zobrazit.
SELECT * FROM msdb.dbo.sysmail_event_log;
Smazat staré události
Chcete-li odstranit všechny události, které byly zaznamenány před určitým datem, použijte @logged_before
argument.
Příklad:
EXECUTE msdb.dbo.sysmail_delete_log_sp
@logged_before = '2020-08-25';
Odstranění událostí určitého typu
Můžete použít @event_type
argument k odstranění pouze událostí daného typu.
Zde je příklad smazání všech informačních událostí.
EXECUTE msdb.dbo.sysmail_delete_log_sp
@event_type = 'information';
Smazat všechny události
Chcete-li odstranit všechny události, spusťte sysmail_delete_log_sp
bez jakýchkoli argumentů.
EXECUTE msdb.dbo.sysmail_delete_log_sp;
Odstranění poštovních položek
Soubor sysmail_delete_log_sp
postup je pouze pro mazání záznamů z protokolu. Neodstraní položky pošty z tabulek pošty databáze.
Použijte sysmail_delete_mailitems_sp
k odstranění e-mailových položek z tabulek Database Mail.