Odosielanie upozornení na automatické odosielanie pracovných úloh na serveri SQL Server s protokolom SMTP
Keď máte automatizované úlohy zálohovania spustené na vašom databázovom serveri, niekedy zabudnete, že dokonca beží. Potom zabudnete skontrolovať, či sú úspešne spustené a neuvedomujú sa, kým sa vaša databáza nezhodí a nemôžete ju obnoviť, pretože nemáte aktuálnu zálohu.
To je miesto, kde sa dostávajú e-mailové upozornenia, takže môžete vidieť stav úloh každé ráno, keď si popíjate kávu a predstierate, že pracujete.
SQL Server poskytuje vstavanú metódu odosielania e-mailov, ale bohužiaľ vyžaduje, aby ste na serveri mali nainštalovaný program Outlook a profil, čo nie je nevyhnutne ideálny spôsob odoslania e-mailu. Našťastie existuje iná metóda, ktorá zahŕňa inštaláciu uloženej procedúry na serveri, ktorá vám umožní odosielať e-maily cez SMTP.
Stiahnite si sp_SQLNotify uložený postup tu.
Ak chcete vložiť adresu IP vášho SMTP servera, budete chcieť upraviť jeden riadok v uloženej procedúre:
EXEC @hr = sp_OASetProperty @ iMsg, 'Configuration.fields ("http://schemas.microsoft.com/cdo/configuration/smtpserver") .Value', '10 .1.1.10 '
Nainštalujte uloženú procedúru do hlavnej databázy, takže ju môžete ľahko používať tam, kde to bude potrebné.
Otvorte zoznam SQL Server Agent \ Jobs a vyberte vlastnosti úlohy, ktorú sa pokúšate vytvoriť upozornenie pre:
Kliknite na kartu Kroky a uvidíte obrazovku, ktorá vyzerá takto:
Kliknutím na tlačidlo Nové vytvoríte nový krok úlohy. Tento krok použijeme na odoslanie e-mailovej správy o úspechu.
Názov kroku: Úspech oznamovania e-mailom
Zadajte tento SQL do okna príkazu, ako je uvedené nižšie. Budete chcieť prispôsobiť e-mailové adresy a správy, ktoré zodpovedajú vášmu životnému prostrediu:
exec master.dbo.sp_SQLNotify '[email protected]', '[email protected]', 'Úspech zálohovania úloh', 'Úloha zálohovania bola úspešne ukončená'
Kliknite na tlačidlo OK a potom znovu kliknite na tlačidlo Nový a vytvorte ďalší krok. Toto bude krok oznamovania poruchy.
Názov kroku: Chyba oznámenia e-mailom
SQL:
exec master.dbo.sp_SQLNotify '[email protected]', '[email protected]', 'Zlyhanie zálohovania úloh', 'Zálohovací úloha zlyhala'
Teraz je nápad, aby sa položky riadili určitým pracovným postupom. Najprv kliknite na tlačidlo Upraviť v kroku 1 a nastavte vlastnosti, ako je znázornené tu:
To, čo hovoríme, je, že na úspech, prejdite na krok úspechu a na zlyhanie prejdite na krok zlyhania. Docela jednoduché veci.
Teraz upravte druhý krok, ten sa označil ako "Úspech oznamovania e-mailom" a nastavte vlastnosti, ktoré sú tu viditeľné:
Hovoríme, že ak je notifikačná úloha úspešná, potom práve ukončite prácu bez kroku 3. Ak to nešpecifikujeme, skončíme tým, že dostaneme dva e-maily, jeden s úspechom a druhý s neúspechom.
Teraz upravte tretí krok, ten označený ako "Zlyhanie upozornenia e-mailom" a nastavte vlastnosti, ako sú tu uvedené:
Teraz by mali vaše kroky práce vyzerať takto:
V doručenej pošte by ste mali mať e-mailové upozornenia na úspech alebo neúspech.
Poznámka: Uložená procedúra použitá v tomto článku bola nájdená tu, hoci to nemusí byť pôvodný zdroj.
Stiahnite si sp_SQLNotify uložený postup tu.