Rabu, 24 Februari 2016

Backup Databse Schedule using SQL Jobs





Setelah sebelum nya saya menulis mengenai schedule backup database menggunakan maintenance plan, pada tulisan kali ini saya akan mencoba menulis bagaimana membuat schedule backup database menggunakan SQL Jobs. Ok langsung saja kita mulai tulisan kali ini;
Buka SQL Server Management Studio


Pilih SQL Server Agent -> Jobs -> New Jobs…




Pada tab general Isi kolom Name dengan nama Jobs yang akan kita buat, kemudian pilih tab steps dan klik tombol New untuk membuat SQL Jobs step nya


Pada form New job Step ;
Step name : isi dengan nama job step
Type : pilih Transact-SQL script (T-SQL)


Selanjutnya pada pilihan Database pilih database master dan pada kolom command isi dengan script SQL di bawah ini;

DECLARE @name VARCHAR(50) -- database name  
DECLARE @path VARCHAR(256) -- path for backup files  
DECLARE @fileName VARCHAR(256) -- filename for backup  
DECLARE @fileDate VARCHAR(20) -- used for file name

-- specify database backup directory
SET @path = 'C:\DATABASE\Backup\'  

-- specify filename format
SELECT @fileDate = CONVERT(VARCHAR(20),GETDATE(),112) + REPLACE(CONVERT(VARCHAR(20),GETDATE(),108),':','') 

DECLARE db_cursor CURSOR FOR  
SELECT name 
FROM master.dbo.sysdatabases 
WHERE name NOT IN ('master','model','msdb','tempdb','ReportServer$SQL2008','ReportServer$SQL2008TempDB','_DELETEME')  -- exclude these databases

OPEN db_cursor   
FETCH NEXT FROM db_cursor INTO @name   

WHILE @@FETCH_STATUS = 0   
BEGIN   
       SET @fileName = @path + @name + '_' + @fileDate + '.BAK'  
       BACKUP DATABASE @name TO DISK = @fileName  
       FETCH NEXT FROM db_cursor INTO @name   
END   

CLOSE db_cursor   
DEALLOCATE db_cursor

Setelah selesai klik tombol OK


Setelah itu klik new untuk membuat step job untuk report jika step jobs pertama success, pada tulisan sebelumnya saya sudah menulis mengenai Database mail nah kali ini kita akan pakai Database mail untuk digunakan dalam mengirim report ke email kita.


Pada tab general kolom step name isi dengan nama jobs, kemudian type pilih Transact SQL (T-SQL) untuk database pilih master dan Run as di kosongkan saja, berikut query yang saya pakai.
USE [msdb]
    EXEC sp_send_dbmail
      @profile_name = 'TestSMTP',
      @recipients = 'jamalludin.bae@gmail.com,
      @subject = 'SQL Server Daily Backup,
      @body = 'Congratulation, SQL Server was successfully Backup..!!'
Setelah itu klik tombol Advanced pada kolom sebelah kiri


On success action pilih “Quit the job reporting success” dan pada on failure action pilih “Quit the job reporting failure” dan klik tombol ok


Selanjutnya lakukan hal yang sama untuk membuat step report failed jika step pertama gagal



Selanjutnya edit step pertama dan pilih tab Advanced pada kolom sisi sebelah kiri



Rubah On success action dan on failure action;
On Success action : Go to Step 2 (ReportSuccess)
On Failure action : Go to Step 3 (ReportFailed)
Selanjutnya klik ok


Kemudian klik ok untuk menyimpan dan mengakhiri pembuatan jobs ini.
Selanjutnya kita akan mencoba tes jobs tersebut

Pada SQL Server management studio pilih jobs kemudian klik tanda (+) selanjutnya akan muncul jobs yang telah kita buat tadi


Klik kanan pada jobs tersebut kemudian pilih start jobs  untuk melakukan process yang ada pada step yang telah di buat.


Tunggu sampai prosess selesai


Bisa kita lihat pada gambar di atas status jobs success, dan seharusnya kita mendapatkan report bahwa backup telah sukses.

Cek email dan dapat di lihat report yang di kirim pada SQL Server



Selanjutnya kita tinggal mengatur schedule nya


Klik kanan Jobs yang telah di buat tadi kemudian pilih properties


Setelah keluar form Job properties pilih tab Schedules dan klik tombol new



Pada for New Job Schedule
Name : isi nama schedule
Schedule type : Recurring
Frequency : Daily
Occurs once at : 12:00:00 AM
Duration :
    Start date : biarkan default
    End date : tentukan tanggal terakhir schedule di execute atau pilih No end date

Klik ok jika anda telah selesai meng-set waktu nya.


Ok, selesai lah tulisan saya kali ini, semoga bermanfaat bagi pembaca semuanya...




~~>>Terima Kasih<<~~



0 komentar:

Posting Komentar