SQL 2012 Hosting Indonesia –Jaringan Hosting.Com :: Cara Membuat Cron Job untuk backup SQL Database

Pada postingan kali ini kami akan membahas mengenai cara membuat Cron Job untuk keperluan backup SQL Database. Cron jobs digunakan sebagai scheduling task untuk tugas tugas yang berjalan di dalam server. Biasanya cron jobs digunakan untuk otomatisasi pemeliharaan system dan administrasi. Akan tetapi cron jobs juga relevan jika digunakan untuk keperluan pengembangan aplikasi web. Ada beberapa situasi ketika aplikasi web membutuhkan berbagai task untuk berkerja secara periodik. Cron job/scheduled task merupakan tugas otomatis dalam system yang bisa di atur untuk menjalankan sebanyak apapun pada jarak tertentu. Cron/scheduled task memungkinkan anda untuk menjadwalkan perintah ataupun script untuk berjalan pada waktu tertentu di suatu hari , ataupun di hari tertentu pada suatu minggu, ataupun pada waktu tertentu dalam hari dan bulan yang lebih spesifik. Cron job juga memungkinkan untuk mengatur lebih rinci sampai ke menit ataupun lebih jauh ke acara tahunan.

SQL Server 2012 Hosting Indonesia - Jaringan Hosting

Berikut ini langkah sederhana bagaimana membangun Cron Job untuk backup SQL Database

  • Step 1 buat folder penyimpanan file backup di dalam FTP application

Buka ftp application dan connect ke account yang databasenya ingin anda back up. Buat folder diluar dari webcontent misalnya “backups”.

  • Step 2 Atur folder permissions dalam FTP Application

Klik kanan folder dan tambahkan semua write permission. Jika ftp software anda tidak mampu melakukan hal ini cobalah gunakan FTP client free seperti FileZilla.

  • Step 3 Buat sebuh prosedur penyimpanan yang melakukan backup dengan nama file sebagai input parameternya

Connect ke database menggunakan client dan jalankan query berikut. Prosedur ini dinamakan FullBackup sebagai contoh

set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
GO

CREATE PROCEDURE [dbo].[FullBackup] @FileName  nvarchar(256)
AS
BEGIN

SET NOCOUNT ON;

BACKUP DATABASE [123456_YourDatabase] TO  DISK = @FileName WITH NOFORMAT, NOINIT,  NAME = N’Full Database Backup’, SKIP, NOREWIND, NOUNLOAD,  STATS = 10

END

  • Step 4 buat halaman web yang mengeksekusi prosedur penyimpanan

Anda dapat menggunakan php ataupun asp.net. untuk yang sederhana seperti ini anda dapat menggunakan classic asp. Pada hal ini tidakl ada file dll yang ditangani dan juga tidak dibutuhkan restart aplikasi. Sekarang buatlah halaman asp baru backupdb.asp. isi dari filenya akan mengikuti, jika telah selesai, upload file ini ke folder di dalam content area.

Script in akan meng-generate filename berdasarkan data yang ada. Jika backup pada hari tersebut sudah ada, maka prosedur tersebut akan manambah hitungan sampai filename terbaru ditemukan.

Script ini akan meng-generatte 1 file tiap eksekusi. modifikasi sesuai kebutuhan jika anda ingin menambah sebuah file. edit lokasi dan connection string agar dapat bekerja.

<%@LANGUAGE=”VBSCRIPT” CODEPAGE=”65001″%>
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
<html xmlns=”http://www.w3.org/1999/xhtml”>
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″ />
<title>Untitled Document</title>
</head>

<body>

<%
dim thismonth, thisday, thisyear, location, filelename, ver, extention, abolutespath

thismonth= datepart(“m”, now())
thisday=datepart(“d”, now())
thisyear=datepart(“yyyy”,now())

location=”fs1-n03stor1wc1dfw8382492382489www.yoursite.combackups”
filename=”dbBackup-” & thismonth & “-” & thisday & “-” & thisyear & “_”
ver=1
extention=”.bak”

absolutepath=location & filename & ver & extention

set fso = Server.CreateObject(“Scripting.FileSystemObject”)

while (fso.FileExists(absolutepath)=True)
ver=ver+1
absolutepath=location & filename & ver & extention
wend

Set cn = Server.CreateObject(“ADODB.Connection”)
cn.connectionString= “Provider=SQLNCLI;Server=mssql05-01.wc1;Database=123456_YourDatabase;Uid=123456_YourUsername; Pwd=Yourpassword;”
cn.open

Set cmd = Server.CreateObject(“ADODB.Command”)
Set cmd.ActiveConnection = cn
cmd.CommandText = “FullBackup”
cmd.CommandType = 4 ‘adCmdStoredProc

cmd.Parameters.Refresh
cmd.Parameters(1) = absolutepath

cmd.Execute

cn.close

%>

Execution complete:  Filename=<%= filename & ver & extention%>

</body>
</html>

  • Step 5. Jadwalkan cron job untuk memanggil halaman web

Akses control panel dan masuk ke tab fitur di dalam situs, dengan database. Pilih http sebagai Bahasa. Masukan url kedalam asp script dan email anda, dan jadwalkan tugas untuk berjalan setiap hari pada off hour.

 

Leave a Reply