berikut ini saya coba memberikan sebuah trik bagaimana memberitahu 2 operator SQL Server mengenai sebuah Jobs yang telah dijalankan oleh SQL Server Agent.
Skenarionya adalah seperti ini : saya ada sebuah job untuk melakukan Complete Backup database AdventureWorks. Kemudian sukses atau tidaknya proses backup tersebut akan diberitahukan kepada 2 orang operator melalui email. Langkah-langkahnya adalah sebagai berikut :
- Pertama tentunya kita harus mengaktifkan fitur Database Mail di SQL Server nya. cara-cara mengaktifkannya dapat dilihat disini.
- Kemudian aktifkan SQL Server Agent Services nya.
- yang ketiga adalah tentunya menyiapkan 2 orang operatornya. setiap operator memiliki email sebagai media komunikasi atau notifikasinya.Operator 1 saya beri nama Operator1 yang memiliki email emantin34@yahoo.com. Operator 2 saya beri nama Operator2 yang memiliki email emantin34@hotmail.com. T-SQL nya seperti berikut :
EXEC msdb.dbo.sp_add_operator @name=N'Operator1', @enabled=1, @email_address=N'emantin34@yahoo.com' GO EXEC msdb.dbo.sp_add_operator @name=N'Operator2', @enabled=1, @email_address=N'emantin34@hotmail.com' GO
Kemudian kita buat sebuah Maintanance Plan. Klik kanan pada Maintenance Plans dan pilih ‘New Maintenance Plan..’
lalu akan muncul gambar berikut
Beri nama New Maintenance Plan ini dengan nama FullBackup_AdventureWorks_DB kemudian klik tombol OK. dari Maintenance Plan Desiger, pilih toolbox Backup Database Task
lalu drag n drop toolbox tersebut kedalam Maintenance Plan Designer dan akan tampak seperti ini
klik 2 kali pada Backup Database Task tersebut tool tersebut, kemudian akan muncul Backup database Task Toll Properties. sesuaikan semua properties dengan tujuan kita yaitu melakukan Backup Full untuk database AdventureWorks. bila sudah selesai melakukan settingnya, maka akan tampak seperti berikut Backup Database Task nya
kemudian kita tambahkan lagi sebuah tool kedalam maintenance plan designer nya, yaitu Execute T-SQL Statement Task.
lalu drag n drop kedalam Maintenance Plan Designer, lalu masukkan T-SQL Berikut ini
declare @waktu as varchar(70) set @waktu='Report FullBackup AW SUKSES! pada '+ (select cast(GETDATE() as varchar(70))) EXECUTE msdb.dbo.sp_notify_operator @profile_name =N'AdminSuhermanPC', @name=N'operator1', @subject=N'Full Backup AW', @body=@waktu EXECUTE msdb.dbo.sp_notify_operator @profile_name =N'AdminSuhermanPC', @name=N'operator2', @subject=N'Full Backup AW', @body=@waktu GO
lalu kita atur Workflow dari 2 Task yang sudah kita buat ini. kita coba buat untuk values Success. sehingga akan tampak seperti dibawah ini :
Setelah itu kita coba set Schedule dari Maintenance Plan ini. misalkan kita akan set bahwa Maintenance Plan ini akan dijalankan setiap hari pada pukul 23.00. caranya adalah dengan menset subplannya
klik pada icon sebelah kanan yang bergambar calendar. aturlah Frequency dan Daily Frequency nya.
Sekarang kita lihat pada Object Explorer, dan lihat pada Job, ternyata sudah muncul subplan yang sudah kita set untuk Maintenance Plan yang sudah kita buat. Sekarang kita coba untuk melakukan test pada job ini dengan men-start Job tersebut
Lalu klik ‘Start Job at Step…’ sehingga job yang sudah kita buat tersebut akan dijalankan
Sekarang kita coba cek di Inbox setiap operator yang telah saya buat untuk membuktikan bahwa semua berjalan dengan semestinya
Ternyata kedua operator tersebut telah berhasil menerima notifikasi full backup database AdventureWorks yang dikirim oleh SQL Server.
Ok, selamat mencoba dan semoga bermanfaat.