Odesílání oznámení o automatickém e-mailu práce v serveru SQL Server s protokolem SMTP
Když máte na databázovém serveru spuštěné automatizované úlohy zálohování, někdy zapomenete, že dokonce běží. Poté zapomenete zkontrolovat, zda jsou úspěšně spuštěny, a neuvědomujete si, až dojde k selhání databáze a nelze ji obnovit, protože nemáte aktuální zálohu.
Zde přijíždějí e-mailová upozornění, takže můžete vidět stav úlohy každé ráno, když popíjíte kávu a předstíráte, že pracujete.
SQL Server poskytuje vestavěný způsob odesílání e-mailů, ale bohužel vyžaduje, abyste na serveru nainstalovali Outlook a profil, což není nezbytně ideální způsob odeslání e-mailu. Naštěstí existuje jiná metoda, která zahrnuje instalaci uložené procedury na serveru, která vám umožní odesílat e-maily prostřednictvím protokolu SMTP.
Stáhněte zde sp_SQLNotify uložený postup.
Chcete-li zadat adresu IP serveru SMTP, budete chtít v uložené proceduře upravit jeden řádek:
EXEC @hr = sp_OASetProperty @ iMsg, 'Configuration.fields ("http://schemas.microsoft.com/cdo/configuration/smtpserver") .Value', '10 .1.1.10 '
Nainstalujte uloženou proceduru do hlavní databáze, abyste ji mohli snadno použít kdekoli potřebujete.
Otevřete seznam SQL Server Agent \ Úlohy a vyberte vlastnosti pro úlohu, kterou se pokoušíte vytvořit oznámení:
Klikněte na kartu Kroky a měli byste vidět obrazovku, která vypadá takto:
Klepnutím na tlačítko Nový vytvoříte nový krok úlohy. Tento krok použijeme k odeslání e-mailové zprávy o úspěchu.
Název kroku: Úspěšnost oznámení o e-mailu
Zadejte tento SQL do okna příkazu, jak je vidět níže. Budete chtít přizpůsobit e-mailové adresy a zprávy, které odpovídají vašemu prostředí:
exec master.dbo.sp_SQLNotify '[email protected]', '[email protected]', 'Úspěch zálohování úloh', 'Zálohovací úloha byla úspěšně dokončena'
Klepněte na tlačítko OK a potom znovu na tlačítko Nový a vytvořte další krok. Jedná se o krok oznámení o selhání.
Název kroku: selhání oznámení e-mailu
SQL:
exec master.dbo.sp_SQLNotify '[email protected]', '[email protected]', 'Zálohování úloh zálohování', Zálohovací úloha selhala '
Nyní je myšlenka učinit, aby položky sledovaly určitý pracovní postup. Nejprve klikněte na Upravit v kroku 1 a nastavte vlastnosti, jak je uvedeno zde:
To, co říkáme, je to, že na úspěchu, jděte na krok úspěchu a na neúspěch, jděte do kroku selhání. Docela jednoduché věci.
Nyní upravte druhý krok, označený jako "Úspěch oznamování pošty", a nastavte vlastnosti, jak jsou zde vidět:
Říkáme, že pokud je oznamovací úloha úspěšná, stačí ukončit práci bez běhu kroku 3. Pokud to neudělíme, skončíme získáním dvou e-mailů, jednoho s úspěchem a jednoho s neúspěchem.
Nyní upravte třetí krok, ten označený jako "Selhání oznámení o e-mailu" a nastavte vlastnosti, jak jsou zde vidět:
Nyní by vaše pracovní kroky měly vypadat takto:
Nyní byste měli mít v doručené poště upozornění na e-mail, ať už se jedná o úspěch nebo neúspěch.
Poznámka: Uložená procedura použitá v tomto článku byla nalezena zde, i když to nemusí být původní zdroj.
Stáhněte zde sp_SQLNotify uložený postup.