Invio di notifiche e-mail di lavori automatizzati in SQL Server con SMTP

Invio di notifiche e-mail di lavori automatizzati in SQL Server con SMTP
Invio di notifiche e-mail di lavori automatizzati in SQL Server con SMTP

Video: Invio di notifiche e-mail di lavori automatizzati in SQL Server con SMTP

Video: Invio di notifiche e-mail di lavori automatizzati in SQL Server con SMTP
Video: COME CONFIGURARE RDP su UBUNTU - Desktop remoto di Linux su Windows (XRDP) - YouTube 2024, Aprile
Anonim

Quando hai processi di backup automatizzati in esecuzione sul tuo server database, a volte dimentichi che sono persino in esecuzione. Poi ti dimentichi di controllare se stanno funzionando con successo e non ti rendi conto fino a quando il tuo database non va in crash e non puoi ripristinarlo dato che non hai un backup corrente.

È qui che arrivano le notifiche e-mail, così puoi vedere lo stato del lavoro ogni mattina mentre sorseggi il caffè e fai finta di lavorare.

SQL Server fornisce un metodo integrato per l'invio di e-mail, ma sfortunatamente richiede che Outlook e un profilo siano installati sul server, il che non è necessariamente il modo ideale per inviare una e-mail. Per fortuna c'è un altro metodo, che comporta l'installazione di una stored procedure sul server che ti consentirà di inviare email via SMTP.

Scarica la stored procedure sp_SQLNotify qui.

Dovrai modificare una riga nella stored procedure per inserire l'indirizzo IP del tuo server SMTP:

EXEC @hr = sp_OASetProperty @iMsg, ‘Configuration.fields(“https://schemas.microsoft.com/cdo/configuration/smtpserver”).Value’, ‘10.1.1.10’

Installa la procedura memorizzata nel database principale, in modo che possa essere facilmente utilizzata da qualsiasi luogo.

Aprire l'elenco di SQL Server Agent Jobs e selezionare le proprietà per il lavoro che si sta tentando di creare una notifica per:

Fai clic sulla scheda Passaggi e dovresti visualizzare una schermata simile a questa:
Fai clic sulla scheda Passaggi e dovresti visualizzare una schermata simile a questa:

Nome passaggio: notifica e-mail riuscita

Inserisci questo SQL nella finestra di comando come mostrato di seguito. Dovrai personalizzare gli indirizzi email e l'oggetto del messaggio in modo che corrisponda al tuo ambiente:

exec master.dbo.sp_SQLNotify ‘[email protected]’,’[email protected]’,’Backup Job Success’,’The Backup Job completed successfully’

Nome passaggio: errore di notifica email

SQL:

exec master.dbo.sp_SQLNotify ‘[email protected]’,’[email protected]’,’Backup Job Failure,’The Backup Job failed’

Ora l'idea è di fare in modo che gli oggetti seguano un flusso di lavoro specifico. Innanzitutto fai clic su Modifica al passaggio 1 e imposta le proprietà come mostrato qui:

Ora modifica il secondo passaggio, quello "La sicurezza delle email ha successo" e imposta le proprietà come mostrato qui:

Stiamo dicendo che se il processo di notifica ha esito positivo, basta lasciare il lavoro senza eseguire il passaggio 3. Se non lo specificiamo, finiremo per ricevere due e-mail, una con esito positivo e una con esito negativo.
Stiamo dicendo che se il processo di notifica ha esito positivo, basta lasciare il lavoro senza eseguire il passaggio 3. Se non lo specificiamo, finiremo per ricevere due e-mail, una con esito positivo e una con esito negativo.

Ora modifica il terzo passaggio, quello etichettato "Errore notifica email" e imposta le proprietà come mostrato qui:

Ora i tuoi passi di lavoro dovrebbero assomigliare a questo:
Ora i tuoi passi di lavoro dovrebbero assomigliare a questo:
Ora dovresti ricevere notifiche e-mail nella tua casella di posta in caso di esito positivo o negativo.
Ora dovresti ricevere notifiche e-mail nella tua casella di posta in caso di esito positivo o negativo.

Nota: la stored procedure utilizzata in questo articolo è stata trovata qui, anche se potrebbe non essere la fonte originale.

Scarica la stored procedure sp_SQLNotify qui.

Consigliato: