If-Koubou

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 (Cum să)

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

Aici intră notificările prin e-mail, astfel încât să puteți vedea starea comenzii î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 SQL Server Agent \ Jobs și selectați proprietățile pentru lucrarea pe care încercați să creați o notificare pentru:

Faceți clic pe fila Steps ș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 rezervă a fost finalizat 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șuării.

Nume pas: Eroare de notificare prin e-mail

SQL:

exec master.dbo.sp_SQLNotify '[email protected]', '[email protected]', 'Failure Job Backup', Job Backup 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 pe eșec, mergeți la etapa de eșec. Destul de simple lucruri.

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țaț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, fie pentru succes, fie pentru eșec.

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

Descărcați procedura sp_SQLNotify stocată aici.