30Jun
Quando hai automatizzato i processi di backup 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.
Ecco dove 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 qui la stored procedure sp_SQLNotify.
Si desidera modificare una riga nella stored procedure per inserire l'indirizzo IP del server SMTP:
EXEC @hr = sp_OASetProperty @iMsg, 'Configuration.fields( "http: //schemas.microsoft.com/cdo/configuration/ smtpserver"). Valore', '10. 1.1.10 '
Installa la stored procedure nel database master, 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:
Fare clic sulla scheda Passi e si dovrebbe vedere una schermata simile a questa:
Fare clic sul pulsante Nuovoper creare un nuovo passaggio di lavoro. Utilizzeremo questo passaggio per inviare la notifica via email in caso di successo.
Nome passaggio: notifica e-mail riuscita
Immettere questo codice 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', 'Completato il processo di backupcon successo '
Fare clic su OK, quindi fare nuovamente clic sul pulsante Nuovo per creare un altro passaggio. Questa sarà la fase di notifica di errore.
Nome passaggio: errore notifica email
SQL:
exec master.dbo.sp_SQLNotify '[email protected]', '[email protected]', 'Errore processo di backup,' Processo di backup non riuscito '
Ora l'idea è difare in modo che gli articoli seguano un flusso di lavoro specifico. Innanzitutto fai clic su Modifica nel passaggio 1 e imposta le proprietà come mostrato qui:
Quello che stiamo dicendo è che in caso di successo, vai alla fase di successo, e in caso di fallimento, vai alla fase di errore. Roba abbastanza semplice
Ora modifica il secondo passaggio, l'altro ha etichettato "Email Notification Success" 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 facciamoSpecificare questo, quindi finiremo per ricevere due e-mail, una con successo 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 dovresti avere delle notifiche e-mail nella tua casella di posta in caso di successo o fallimento.
Nota: la stored procedure utilizzata in questo articolo è stata trovata qui, anche se potrebbe non essere la fonte originale.
Scarica qui la stored procedure sp_SQLNotify.