Anda di halaman 1dari 13

DATABASE RECOVERY

Mengapa dibutuhkan teknik recovery


database?

 Transactions should be durable, but we


cannot prevent all sorts of failures:
• System crashes
• Power failures
• Disk crashes
• User mistakes
• Sabotage
• Natural disasters
Prevention
 Beberapa cara pencegahan kegagalan
dalam transaksi database:
1. Reliable OS
2. Security
3. UPS and surge protectors
Peran Transaction Log
 Transaction log merekam semua detail transaksi
 Rekaman berisi semua perubahan dalam
database yang diakibatkan oleh suatu transaksi
 Membatalkan perubahan(Undo) ketika traksaksi
sudah dilakukan
 Rekaman (The log) disimpan dalam disk bukan
di memory. Sehingga jika system crashes,
database tetap aman.
 Sebaiknya proses perekaman log transaksi
dilakukan sebelum prosses Commit dieksekusi
System Failures
 System failure berarti semua transaksi yang
sedang berjalan terpengaruh oleh :
 Sofware crashes
 Power failure
 Media fisik (disk) tidak rusak
 Pada selang waktu tertentu DBMS melakukan
checkpoint
 Semua transaksi yang telah dilakukan
(committed) direkam dalam disk.
 Disk berisi rekaman transaksi-transaksi yang
telah dijalankan.
Transaksi-Transaksi
System Recovery
 Semua transaksi yang berlangsung saat
terjadi kegagalan harus di undone dan restart.
 Semua transaksi yang telah dilakukan sejak
chekpoint terakhir harus dilakukan ulang.
 Transaksi T1 tidak membutuhkan recovery
 Transacksi T3 atau T5 harus di-undone dan di-
restart
 Transaksi T2 atau T4 harus dilakukan ulang
Transaction Recovery
 UNDO and REDO
 Dilakukan terhadap setiap pencatatan
log, dimulai dari checkpoint terakhir.
If a BEGIN TRANSACTION entry is found for T
Add T to UNDO
If a COMMIT entry is found for T
Move T from UNDO to REDO
Forwards and Backwards
 Backwards  Forwards
recovery recovery
 Sering disebut  Sering disebut
rollback rollforward
 DBMS  DBMS memulai
membatalkan pemulihan dengan
perubahan yang cadangan (back
tidak diinginkan up) sebelumnya
pada basis data dari basis data.
(Undo)
Media Failures

 System failures tidak fatal


 Karena hanya informasi setelah
checkpoint terakhir yang terpengaruh,
 Dan dapat diatasi dengan transaction log.
 Media failures lebih fatal
 Terjadi kerusakan pada data yang
disimpan dalam disk.
 Saat disk rusak, transaction log mungkin
juga rusak.
Backups
 Backups diperlukan untuk recovery database
dari media failure
 Seluruh transaction log dan content database
sebaiknya disimpan di secondary storage.
 Kelemahannya:
1. Time consuming, and often requires down time
2. Backups frequency
3. Frequent enough that little information is lost,
Not so frequent as to cause problems.
4. Every day (night) is common
Recovery from Media Failure
 Restore database setelah melakukan
backup terakhir
 Gunakan transaction log untuk redo
perubahan terakhir
 Jika transaction log rusak gunakan
langkah kedua
 Simpan rekaman log transaksi pada
perangkat keras yang berbeda.
Kuis
 Buat algoritma untuk recovery database.
Contoh kegagalan transaksi pada
transaksi jual-beli barang, yang
berpengaruh terhadap validitas data
transaksi dan stock barang.
 Kerjakan berkelompok (2 orang)
dikumpulkan paling lambat jam 10
malam 10-12 2014 via email.
 Bonus 5 point untuk UAS dan hanya
diterima untuk 10 kelompok pertama

Anda mungkin juga menyukai