Tampilkan postingan dengan label backup. Tampilkan semua postingan
Tampilkan postingan dengan label backup. Tampilkan semua postingan

Jumat, 07 November 2014

Backup data menggunakan XCOPY



Perintah copy pada command prompt sudah sangat familiar. Command copy ini biasa digunakan untuk menyalin/menggandakan suatu file. Bagaimana caranya jika kita ingin meng-copy file dan struktur direktorinya? Maka kita dapat menggunakan command xcopy.

Syntax :
XCOPY SUMBER [DESTINATION ] [/Y|-Y ] [/A|/M ] [/D:DATE ] [/P ] [/S ] [/E ] [/V ][/W ]

Keterangan :
DESTINATION diisi dengan subdir letak file secara lengkap.
/Y :Untuk tidak menampilkan pesan jika terjadi penimpaan file.
/-Y :Untuk menampilkan pesan jika terjadi penimpaan file.
/A :Menyalin hanya pada file yang bera ribut archieve(arsip).
/M :Menyalin file yang elah diberi attribute archieve.Switch ini berbeda dengan /A
karena Switch /M merubah atribute file asal.
/D :date menyalin hanya file yang dimodivikasi pada tanggal yang telah
dispesifikasikan.
/P :digunakan agar MS-DOS menanyakan terlebih dahulu setiap aktifitas XCOPY.
/S :Menyalin suatu diraktori berikut seluruh file dan subdirektori didalamnya .
Kecuali direktori kosong.
/E :Digunakan bersama switch /S yang fungsinya untuk menyalin suatu direktori
beriku sub-sub directory didalamnya termasuk direktori yang kosong.
/V :untuk memeriksa setiap file yang disalinkan tersebut sama dengan file asal.
/W :Digunakan agar MS-DOS menampilkan pesan-pesan terlebih dahulu dan
menanyakan tindakan selanjutnya,sebelum xccopy menyalin file-file tersebut. Xcopy
kependekan dari “eXtended Copy” sama dengan perintah copy, kecuali program ini memberikan lebih banyak pilihan. Dengan Xcopy anda dapat:
· Menyalin seluruh direktori, sub direktori dan file-file yang ada di dalam­nya.
· Menyalin file yang dibuat atau diubah setelah tanggal tertentu.
· Menyuruh Xcopy memberitahu terlebih dahulu sebelum melakukan penya­linan dan lain sebagainya

Command xcopy ini bisa kita manfaatkan untuk membackup data penting sebagai antisipasi jika terjadi kerusakan pada hardisk utama.
Contoh kasus : kita ingin membackup data kita di folder C:\ C:\Users\edy\Documents\Progja ke hardisk D:\Backup setiap jam 12:00.
Langkah I :

1. Buat file berektensi BAT yg berisi command xcopy :
-          Buka file notepad dan ketikan :
                  xcopy /S /Y C:\Users\edy\Documents\Progja D:\backup
-          Save file dengan nama backupdata.bat ke c:\


2.       Buat schedule task dari Control Panel -> Administrative Tools --> Task Schedule


3.       Setting Task Schedule :
-          Pilih menu Action -> Create Task

-          Buat nama task di Tab General “backupdata”
-          Tab Triggers > New à Begin on Task “On a schedule” --> Time 12:00 --> Daily --> Ok.

-          Tab Actions --> New --> Start a program --> Browse (ambil file backupdata.bat) --> Ok.


-          Klik tombol OK.

Untuk mengetahui apakah task schedule yg dibuat apakah ada error atau tidak. Kita bisa mengujinya dengan cara klik kanan pada nama schedule tadi “backupdata” setelah itu tekan tombol run, jika ada command prompt yg muncul dan di dalam folder D:\backup sudah terisi berarti proses task schedule anda sudah berhasil.


Backup data menggunakan perintah xcopy sudah bisa dijalankan. Pasti bermanfaat.

Selasa, 02 Februari 2010

Backup Database Postgresql selama 7 hari

Backup database ini dilakukan untuk menjaga jika terjadi masalah pada database baik berupa data yg terhapus secara tidak sengaja, hardisk dari tempat penyimpanan data tersebut corrupt dll, maka kita akan membutuhkan data backup ini yg akan di restore menggantikan data yg rusak tadi.
Media/hardisk tempat menyimpan data backup tersebut sebaiknya berbeda dengan tempat database yg terpakai / sedang digunakan. Hal ini dilakukan untuk :
1. Menghindari hardisk cepat penuh karena bercampur antara database dan data backup.
2. Jika hardisk database corrupt, maka data backup tidak ikut corrupt.

Untuk membackup database pada Postgresql dapat menggunakan command pg_dump atau pg_dumpall untuk membackup semua database. Kita dapat membatasi backup database hanya selama 7 hari saja dan membuatkan LOG FILE backup database.

Script di bawah ini akan menjalankan backup database selama 7 hari, jadi jika ada data backup yg melebihi 7 hari maka data tersebut akan di hapus. Linux yg digunakan adalah Linux Ubuntu.

Script backupdata.sh sebagai berikut :

#!/bin/bash
DATE=`date +%Y%m%d`
dataexp=`date --d 7yesterday +%Y%m%d`
LOGFILE=Log`date +%Y%m%d`.log
touch $LOGFILE

pg_dump -F c -d db_name > /var/lib/postgresql/backup/db_name$DATE.backup
echo `date +%Y/%m/%d` `date +%H:%m` "/var/lib/postgresql/backup/db_name$DATE.backup" > $LOGFILE
gzip -f /var/lib/postgresql/backup/db_name$DATE.backup

#hapus file seminggu yg lalu.
#cek dulu jika sdh lebih dari 7 file.

if [ $(ls /var/lib/postgresql/backup | wc -l) -gt 7 ]
then
#echo 'ada lebih dari 7 file'
cd /var/lib/postgresql/backup/harian
rm *$dataexp.backup.gz
fi
#hapus seminggu yg lalu selesai


Penjelasan :
DATE=`date +%Y%m%d` adalah mengambil tanggal system yg akan digunakan sebagai nama file backup.

dataexp=`date --d 7yesterday +%Y%m%d` adalah untuk mengambil file data backup yg sudah lebih tujuh hari.

LOGFILE=Log`date +%Y%m%d`.log adalah digunakan sebagai nama file LOG berdasarkan tanggal system.

touch $LOGFILE adalah untuk membuat nama file LOG berdasarkan LOGFILE.

pg_dump -F c -d db_name > /var/lib/postgresql/backup/harian/db_name$DATE.backup adalah untuk menjalankan proses backup database db_name yg akan disimpan pada folder /var/lib/postgresql/backup/harian/.
echo `date +%Y/%m/%d` `date +%H:%m` "/var/lib/postgresql/backup/harian/db_name$DATE.backup" > $LOGFILE adalah untuk menginput hasil backup pada LOGFILE.

gzip -f /var/lib/postgresql/backup/harian/db_name$DATE.backup adalah untuk menkompres file backup.

Setelah itu simpan script backupdata.sh pada folder /usr/local/bin. Jalankan command chmod backupdata.sh 755. Agar script tersebut dapat dijalankan otomatis oleh postgres jalankan proses mengaktifkan permission-nya sebagai berikut :

1. Ubah owner dari script backupdata.sh tersebut menjadi postgres, yaitu :
Chown postgres backupdata.sh
2. Buat cron job dengan aktif terlebih dulu sebagai user postgres, yaitu :
 su – postgres [enter]
 crontab –e [enter]
 0 1 * * * /usr/local/bin/backupdata.sh (data akan di backup setiap jam 01.00) [CTRL+X] jawab Yes
3. Buat hardisk slave (harian) aktif pada folder “/var/lib/postgresql/backup”, yaitu :
Mount /dev/sdb1 /var/lib/postgresql/backup/

Script backupdata.sh ini akan otomatis menyimpan data backup pada folder harian yg telah terlebih dulu di mount, serta akan membuatkan log file berdasarkan tanggal system sehingga kita akan dengan mudah mendapatkan catatan dari hasil backup yg telah dijalankan. Dan data yg di backup sudah terkompres sehingga file tersebut tidak terlalu besar.

Dari script di atas, anda dapat membuatkan backup bulanan secara otomatis dengan menghapus perintah hapus data dan menambahkan pada cron job untuk menjalankan perintah backup data bulanan.