Pagina principala » HOWTO » Trimiterea notificărilor automate de e-mail de locuri de muncă în SQL Server cu SMTP

    Trimiterea notificărilor automate de e-mail de locuri de muncă în SQL Server cu SMTP

    Când aveți sarcini de salvare automate care rulează pe serverul bazei dvs. de date, uneori uitați că acestea sunt chiar în desfășurare. Apoi, uitați să verificați dacă acestea se execută cu succes și nu vă dați seama până când baza dvs. de date se blochează și nu o puteți restabili din moment ce nu aveți o copie de rezervă curentă.

    Aici intră notificările prin e-mail, astfel încât să puteți vedea starea postului în fiecare dimineață când savurați cafeaua și pretindeți că lucrați.

    SQL Server oferă o metodă integrată de trimitere a mesajelor de poștă electronică, însă, din nefericire, este necesar să aveți Outlook și un profil instalat pe server, ceea ce nu este neapărat modul ideal de a trimite un e-mail. Din fericire, există o altă metodă, care implică instalarea unei proceduri stocate pe serverul dvs., care vă va permite să trimiteți e-mail prin SMTP.

    Descărcați procedura sp_SQLNotify stocată aici.

    Veți dori să editați o linie în procedura stocată pentru a pune adresa IP a serverului dvs. SMTP:

    EXEC @hr = sp_OASetProperty @ iMsg, 'Configuration.fields ("http://schemas.microsoft.com/cdo/configuration/smtpserver") .Value', '10 .1.1.10 '

    Instalați procedura stocată în baza de date principală, astfel încât aceasta să poată fi ușor utilizată de oriunde este nevoie.

    Deschideți lista de agenți SQL Server \ Jobs și selectați proprietățile pentru lucrarea pe care încercați să o creați pentru:

    Faceți clic pe fila Pași și ar trebui să vedeți un ecran care arată astfel:

    Faceți clic pe butonul Nou pentru a crea un nou pas de lucru. Vom folosi acest pas pentru a trimite notificarea prin e-mail cu privire la succes.

    Nume pas: Succesul de notificare prin e-mail

    Introduceți acest SQL în fereastra de comandă după cum se vede mai jos. Veți dori să personalizați adresele de e-mail și subiectul mesajului pentru a se potrivi cu mediul dvs.:

    exec master.dbo.sp_SQLNotify "[email protected]", "[email protected]", "Succesul de salvare de rezervă", "Jobul de backup a fost terminat cu succes"

    Faceți clic pe OK, apoi pe noul buton Nou pentru a crea un alt pas. Acesta va fi pasul de notificare a eșecului.

    Nume pas: Eroare de notificare prin e-mail

    SQL:

    exec master.dbo.sp_SQLNotify '[email protected]', '[email protected]', 'Failure Job Backup,' Jobul de rezervă a eșuat '

    Acum, ideea este ca produsele să urmeze un flux de lucru specific. Primul clic pe Editați la pasul 1 și setați proprietățile după cum se arată aici:

    Ceea ce spunem este că, în ceea ce privește succesul, mergeți la pasul de succes și, în caz de eșec, mergeți la etapa de eșec. Destul de simplu.

    Acum editați al doilea pas, cel care a etichetat "Succesul de notificare prin e-mail" și setați proprietățile așa cum se vede aici:

    Spunem că, dacă lucrarea de notificare are succes, atunci trebuie doar să renunți la treaba fără a trece la pasul 3. Dacă nu specificăm acest lucru, atunci vom ajunge să primim două e-mailuri, unul cu succes și unul cu eșec.

    Acum editați al treilea pas, cel care a etichetat "Eroare de notificare prin e-mail", și setați proprietățile așa cum se vede aici:

    Acum pașii dvs. de lucru ar trebui să arate astfel:

    Acum ar trebui să aveți notificări prin e-mail în căsuța de e-mail pentru succes sau eșec.

    Notă: Procedura stocată utilizată în acest articol a fost găsită aici, deși aceasta nu poate fi sursa originală.

    Descărcați procedura sp_SQLNotify stocată aici.