- BIDANG BACKUP DAN METODE RECOVERY
Backup adalah kegiatan menyalin kumpulan data yang tersimpan dalam hardisk komputer yang biasa dilakukan dari satu lokasi ke lokasi lain. Hal ini dikarenakan potensi yang mengakibatkan hilangnya data baik disebabkan oleh kesalahan pengguna maupun kesalahan teknis pada kondisi komputer tersebut. Untuk memudahkannya maka para pengembang software membuat aplikasi khusus dengan sistem network Client Server sehingga data akan dibackup lebih teratur dan aman.
1. Metode Backup Data
Backup data adalah kegiatan yang harus dilakukan oleh pengelola database. Proses ini dilakukan secara rutin karena hal ini sangatlah penting. Dimisalkan seorang pengelola database dalam 1 hari melayani 100 transaksi bisa dibayangkan betapa banyaknya data yang terkumpul selama 1 bulan. Seandainya pada hari kedua minggu ketiga terjadi crash system. Data-data yang telah terkumpul akan hilang jika sebelumnya tidak dilakukan backup.
a. Konsep Backup
Proses backup pada teknologi informasi mengacu pada penyalinan data, sehingga salinan tambahan itu dapat digunakan untuk pengembali data-data yang telah hilang. Backup sangat berguna terutama dalam dua tujuan, yaitu memulihkan keadaan setelah bencana : dan untuk mengembalikan sejumlah kecil file yang telah dihapus atau rusak.
Berdasarkan lingkup data, Backup dibedakan menjadi :
- Full backup
- Network backup
- Dump backup
- Incremental backup
- Diferensial backup
b. Konsep Replikasi
Replikasi adalah suatu teknik melakukan copy dan pendistribusiandata dan objek database dari satu database ke database lain dan melaksanakan sinkronisasi antara database sehingan konsistensi data terjamin.
Jenis Jenis Replikasi meliputi :
- Snapshot Replication
- Transactional replication
- Merge replication
c. Konsep MySQL Dump
Untuk
keperluan ini MySQL menyediakan sebuah utility yang dinamakan
MySQLDump. MySQLDump adalah utilitas berupa program cadangan yang
pertama kali ditulis oleh Igor Romanenko, digunakan untuk pembuangan
(dump) data sebuah database atau kumpulan database, untuk cadangan
(backup) atau perpindahan (transfer) data ke server lain. Hasil dumpling
dapat berisi pernyataan SQL untuk membuat tabel, insert dan yang lain
dalam bentuk file CSV, teks editor, atau format XML.
Banyak cara untuk melakukan backup data. Berikut ini metode yang bisa dilakukan saat kalian melakukan backup data.
a. Backup Logika dan Backup Physic
Backup
logika adalah menyimpan perintah logic dari struktur database dan
isinya yang direpresentasikan dalam perintah SQL, seperti CREATE
DATABASE, CREATE TABLE dan INSERT DATA.
Berikut karaterististik backup secara logika
1) Backup dilakukan melalui server MySQL untuk mengambil struktur dan informasi data
2) Backup
berjalan lebih lambat karena server harus mengakses informasi data dan
mengirimkannya dalam bentuk logika pada file backup
3) Output
bisa lebih besar daripada bentuk fisik. Misalkan pada data yang
disimpan 5 MB dalam bentuk file SQL maka pada saat recovery akan terjadi
kehabisan memori karena prosesnya akan mengkabiskan banyak memori unuk
mengembalikan dalam bentuk semula
4) Backup dan Restore dilakukan dengan mengabaikan mesin yang digunakan
5) Backup logika tidak melibatkan banyak file hanya satu file logika yang biasanya disimpan dalam file SQL.
6) Data disimpan dalam bentuk logika yang merupakan bahasa DDL dan DML
7) Backup data dilakukan saat server sudah dijalankan
8) Program untuk backup digunakan mysqldump.exe yang memanggil file dikeluarkan dalam bentuk logika file, seperti tsiswa.sql
9) Untuk mengeluarkan data dalam bentuk file lain bisa digunakan perintah: SELECT….INTO OUTFILE
Backup
fisik adalah mengambil database dalam bentuk fisik, untuk database yang
menggunakan Appserv secara fisik data disimpan pada folder
C:\\Appserv\Mysql\data\.
Berikut ini karakteristik backup fisik:
- Backup terdisi atas salinan file dan database. Ini adalah salinan dari semua bagian direktori MySQL, data dari tabel memori tidak disimpan pada disk.
- Backup data secara fisik lebih cepat karenan tidak melakukan memrosesan logika hanya pengcopian secara fisik.
- Outputnya lebih sederhana dibandingkan backup logika
- Sebagai tambahan dari database, backup dapat meliputi file manapun yang terdiri atas file Myi, MYD dan FRM
b. Backup online dan backup offline
Backup online dilakukan saat server MySQL sedang berjalan sedangkan backup offline dilakukan saat server sedang dihentikan.
Media
penyimpanan backup data yang paling simpel dan sederhana adalah
flshdisk, memori card, CD/DVD, hardisk external. Untuk versi online kita
bisa menyimpannya di server tempat penyimpanan layanan data seperti
Cloud Service Dropbox atau media penyimpanan di internet seperti 4shared
dan lain sebagainya.
Atau
kita juga bisa memanfaatkan layanan tempat penyimpanan data dari google
yaitu Google drive. Dengen Google Drive kita bisa membuat, berbagai dan
menyimpan semua file di satu tempat, lalu kita bisa mengakses dokumen
dimana saja.
Untuk
backup data kontak, email dan agenda (kalender) kita juga bisa
memanfaatkan layanan Google Sync (Backup Gratis Nomor Ponsel Dengan
Google Sync). Dengan fasilitas sinkronisasi maka daftar kontak yang ada
di phonebook ponsel/table akan dicopikan ke dalam daftar kontak Gmail.
Ketika ponsel kita rusak/hilang maka tinggal kita setting akun google
kita setting akun gmail kita dan otomatis akan menyalin hasil backup
data kontak/agenda dari Gmail ke ponsel kita.
c. Back Up database dari Cpanel
Melakukan
backup file di akun cpanel kita secara mandiri akan memudahkan kita
jika suatu saat ada sesuatu yang bermasalah di server. Misalnya hardisk
utama mengalami kebakaran ataupun bad sector/crash yang membutuhkan
waktu lama untuk perbaikan. Biasanya dalam hal ini webhoster akan
memindahkan akun anda ke server lain yang masih berjalan normal.
Backup dapat digunakan untuk restore setelah failure. Failure ini disebabkan oleh:
- - Media failure
- - Iser errors, misalnya: tidak sengaja drop table
- - Hardware failure, misalnya: disk-drive rusak atau permanent loss sebuah server; dan
- - Natural disasters
Strategi Backup dan Restore meliputi:
- - Tipe dan frekuensi backup
- - Kecepatan hardware
- - Bagaimana backup diuji
- - Dimana dan bagaimana media backup disimpan
- - Siapa yang melakukan restore
d. Desain Strategi Backup
Apakah perubahan yang terjadi di bagian kecil atau besar database?
Untuk database besar yang terkonsentrasi pada bagian files atau
filegroup, pilih partai backup ata file backup.
Berapa banyak ruang disk dibutuhkan untuk backup? Perkiraan disk space
terutama untuk full database backup. Backup berisi data actual pada
database, tidak termasuk space kosong/tidak digunakan. Seharusnya ukuran
backup lebih kecil dibanding database itu sendiri. Gunakan system
procedure sp_spaceused
2. Recovery
Adalah
suatu proses untuk mengupdate database dengan file bacup yang telah
disimpan terakhir kalinya. Recovery ini memiliki model yaitu recovery
model yang digunakan untuk menentukan tipe backup dan skenario restore
dan mengkontrol bagaimana transaction log dikelola. Database yang
menggunakan model recovery yaitu sebagai berikut.
a. Full Recovery Model
Pada
model ini, transaction log akan di truncate (dipotong) pada saat
dilakukan backup transcation log. Sebagai catatan, perintah truncate
transaction log tidak akan berpengaruh pada ukuran transaction log.
Full
recovery model menggunakan log backup untuk mencegah kehilangan data
karena berbagai macam skenario kegagalan. Transaction log (log backup)
diperlukan. Dapat restore database ke suatu titik waktu yang terdapat
dalam log backup (point-in-time recovery). Dapat menggunakan log backup
untuk roll-forward dataase ke suatu titik pada suatu log-backup.
Kelemahannya membutuhkan media penyimpanan besar dan waktu restore dan
kompleksitas meningkat.
Ilustrasi Full Recovery Model
1) Full Database backup+log (yang paling mudah)
- Backup full database: Db_1 ; Log backup:Log_1 , Log_2
- Setelah Log_2, hilangnya data terjadi Sebelum
keiga backup di restore, db admin harus
membackup active log (tail of the log/tail)
- Restore db_1 , Log_1 , Log_2 tanpa recovery database
- Db admin merestore dan merecovery tail
- Database ter-tecover ke titik kegagalan,
merecover semua data
2) Strategi backup mengurangi workloss exposure dengan:
- Differential backup+log
- Transaction log backup mengurangi workless exposure potensial setelah log backup terbaru, t14. Rangkaian 3 diff backup digunakan mengurangi jumlah transaction log that akan direstore kalau ada kegagalan 3 diff backup cukup besar untuk backup berikutnya sebagai full database backup.
3) Sebelum backup database pertama, ada kemungkinan hilangnya data pada t0-t1.
4) Setelah itu log backup yang rutin mengurangi kemungkinan hilangnya data setelah log backup terakhir
5) Bila ada kegagalan, maka db admin membackup tail of the log (tail) atau log uang belum dibackup
6) Bila tail-log sukses dibackup, db admin dapat menghindari kehilangan data dengan merestore ke titik kegagalan
b. Bulk-Logged Recovery Model
Bulk-logged
recovery model akan menuliskan data page yang telah dimodifikasi ke
dalam file data sebelum transaksi dinyatakan selesai. Berlawanan dengan
full recovery model yang hanya membutuhkan penulisan ke log untuk
menyatakan transaksi selesai. Operasi bulk akan lebih pelan pada sistem
IO yang pelan.
c. Simple Recovery Model
Hampir
sama dnegan bul0logged beberapa operasi bersifat minimally logged.
Macam-macam transaksi tersebut sama persis dengan bulk-logged. Perbedaan
mendasar adalah pada pemotongan transaction log. Transaction log akan
otomatis terpotong pada saat checkpoint selesai.
Karena
tidak ada backup log maka ketika terjadi database failure, yang bisa
dilakukan adalah merestore full backup atau differential backup yang
terakhir.
Ilustrasi Simple Recovery Model
1) Full database backup
Cocok untuk database kecil sehingga dapat sering dibackup
2) Strategi backup mengurangi work-loss exposure
- Differential database backup
- Dibanding full database
- Setelah database backup pertama, sekumpulan differential backup dibuat (3 diff backup)
- Setelah diff backup ketiga cukup besar, backup berikutnya adalah database backup untuk membuat defferential base baru.
B. Backup Offline sesuai dengan Kebutuhan Organisasi dan Keamanan dengan Waktu Mati (Down Time) Minimal
Offline
backup digunakan sebagai sebuah tindakan perlindungan karena dengan
menggunakan metode backup ini, pengguna tidak dapat melakukan updating
sehingga file backup tetap dalam keadaan tidak tersentuh.
Offline
backup merupakan jenis backup yang paling mudah. File-file yang
dibackup ketika melakukan offline backup yang proses menutup database,
seperti:
1. Datafile, untuk menyimpan semuda data yang ada dalam database.
2. Control file, untuk menyimpan struktur fisik dari database.
3. Redo log file, untuk menyimpan semua perubahan file yang terjadi pada database yang
digunakan dalam proses recovery.
4. Parameter file (init.sid), yaitu file yang berisi parameter-parameter dari database.
Langkah langkah untuk melakukan backup offline basis data adalah sebagai berikut:
1. Masuk ke start-Programs-Mocrosoft SQL Server-Enterprise Manager.
2. Maka akan tampil layar Enterprise Manager
- Klik tanda + yang ada di depan tulisan microsoft SQL Servers maka akan tampil tulisan
+SQL Server Groups dibawah tulisan Microsoft SQL Servers.
- Klik tanda + yang ada di depan tulisan SQL server Groups maka akan tampil tulisan +(Local) (Windows NT)
- Klik tanda + yang ada di depan tulisan Local (Windows NT) maka akan tampil layar Windows NT.
- Klik tombol connect
3. Klik tanda + yang ada di depan folder Databases, maka akan tampil nama nama database yang ada di dalam server (local) ini
4. Klik kanan pada databases atau pada salah satu database, lalu pilih All Task>Backup
Database maka akan tampil layar Backup Database
5. Pilih Database yang ada di backup di Database droplist, bila diperlukan isi nama backup di Name textbox dan keterangan di Description textbox
6. Pilih Databas-complete jika akan melakukan backup seluruh data
7. Pilih database-differential jika akan melakukan backup hanya data yang terjadi
perubahan sejak terakhir dilakukan backup database complete. Untuk bisa melakukan
backup database differential setidaknya sudah pernah melakukan backup database
complete minimal sekali
8. Pilih Transaction Log jika akan melakukan backup transaction log.
9. Pilih File and filegroup jika akan melakukan backup per filegroup. Klik button yang
digunakan untuk mencari filegrounp
10. Pilih Tape jika akan melakukan backup ke tape device
11. Pilih disk jika akan melakukan backup ke disk device
12. Klik button Add untuk menambahkan target backup
13. Klik button Remove untuk menghapus target backup
14. Klik button Content untuk melihat detail dari isi target backup
15. Pilih append to media jika backup ke tape melanjutkan sisa backup sebelumnya
16. Pilih overwrite existing media jika backup ke tape menulis ulang dari awal lagi.Pilih lokasi penyimpanan datanya Kemudian isi nama file di kotak file name. Jika sudah klik OK. Pastikan kotak file name sudah terisi dengan lokasi dan nama file yang diinginkan. Jika sudah benar klik tombol OK
17. Selesai
Cek hasil backup date melalui Windows Explore, lihat ke folder tempat penyimpanan data tersebut.
Downtime adalah keadaan dimana web anda tidak bisa diakses dalam waktu tertentu.
Ada 3 backup dalam mengembalikan basis data ke keadaan yang dianggap benar setelah terjadinya downtime
1. Pemulihan terhadap kegagalan transaksi
2. Pemulihan terhadap kegagalan media
3. Pemulihan terhadap kegagalan sistem
Fasilitas backup pada DBMS
1. Fasilitas logging dengan membuat track pada tempatnya saat transaksi berlangsung dan pada saat database berubah
2. Fasilitas checkpoiny, melakukan update database yang terbaru
3. Manager pemulihan, memperbolehkan sistem untuk menyimpan ulang database menjadi lebih konsisten setelah terjadinya kesalahan
Teknik backup
1. Defered update/perubahan yang ditunda: perubahan pada database tidak akan berlangsung sampai transaksi ada pada point disetujui (COMMIT)
2. Immediate Upadate/prubahan langsung. Perubahan pada DB akan segera tanpa harus menunggu sebuah transaksi tersebut disetujui
3. Shadow Paging: menggunakan page bayangan dimana prosesnya terdiri atas 2 tabel yang sama, yang satu menjadi tabel transaksi dan yang lain digunakan sebagai cadangan.
C. File Backup Online sesuai kebutuhan Organisasi dan Keamanan denngan Waktu
Mati (Down Time) Minimal
Backup
online adalah metode penyimpanan data offsite dimana file, folder, atau
seluruh isi sistem secara teratur didukung pada remote server atau
komputer dengan koneksi jaringan. Sejumlah organisasi menyediakan
layanan backup online untuk pelanggan yang komputernya terhubung ke
internet, secara otomatis menyalin file yang dipilih untuk cadangan
penyimpanan di penyedia layanan.
Semakin
banyak organisasi yang tergantung pada penyedia layanan backup online
untuk keamanan tambahan pada file komputer yang mereka simpan. Ada
kesadaran bahwa sebagian besar pekerjaannya bergantung pada data ini.
Bagi mereka penyimpanan ini berfungsi dengan baik sebagai penyimpan data
pada komputer di zaman modern.
Ada beberapa keuntungan dari layanan backup online yaitu sebagai berikut;
1. Otomatis, setelah salah satu menetapkan jadwal mereka, itu sepenuhnya otomatis.
2. Aman, data disimpan pada tape disk dan tidak.
3. Diakses dan dikelola dari mana saja
4. Efisien penggunaan internet
5. Tidak ada penanaman modal.
6. Kepatuhan peraturan
Tujuan
dari setiap backup online dan rencana pemulihan adalah untuk menjaga
integritas sistem dan organisasi dengan sedikit atau tidak ada gangguan
dalam proses.
Sebaik apapun teknologi pasti juga memiliki kekurangan. Beberapa kekurangan yang ditimbulkan dari layanan online antara lain:
1. Komputer menjadi lambat atau tidak bisa dipakai sama sekali jika internet bermasalah
atau kelebihan beban
2. Organisasi yang menyewa layanan dari cloud computing tidak punya akses langsung ke sumber daya. Jadi semua tergantung dari kondisi vendor/penyedia layanan cloud computing
3. Jika server vendor rusak atau punya layanan backup yang buruk, maka organisasi akan mengalami kerugian besar.