0% menganggap dokumen ini bermanfaat (0 suara)
3 tayangan25 halaman

Sistem Basisdata 13. Backup & Recovery

Diunggah oleh

asihlecture
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
3 tayangan25 halaman

Sistem Basisdata 13. Backup & Recovery

Diunggah oleh

asihlecture
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 25

Sistem Basis data

13. Backup & Recovery Database

Asih Winantu,S.kom, M.Cs

www.stmikelrahma.ac.id 1
Pendahuluan
 Salah satu metode untuk melindungi database dari kerusakan
adalah backup dan recovery/restore.
 Backup data merupakan pengelolaan database untuk melakukan
penyalinan sistem, data,dan aplikasi. Backup dilakukan untuk
menjaga basis data dari kerusakan dari sistem dari luar ataupun dari
dalam sistem, yang disengaja atau tidak disengaja.
 Sedangkan recovery/restore merupakan proses pengembalian
backup ke dalam sistem. Restore dilakukan untuk mengembalikan
keadaan sistem kembali pada keadaan semula, keadaan terakhir
pada saat operasional, sebelum terjadi kerusakan pada sistem.
Pada proses inid ilakukan pengembalian data baik struktur maupun
isi dari database.

www.stmikelrahma.ac.id 2
Back up & recovery
Issue dari Backup dan Recovery bagi administrator database yaitu:
 mengantisipasi terjadinya suatu failure pada database
 meningkatkan mean time between failure
 mengurangi mean time to recover dan
 mengurangi terjadinya loss data

 Backup berarti suatu kegiatan untuk menyimpan database dalam


bentuk datafile, control file dan archieve log ke dalam media
penyimpanan lain seperti disk atau tape.
 Sedangkan Recovery merupakan suatu proses untuk mengupdate
database dengan file Backup yang telah disimpan terakhir kalinya.

www.stmikelrahma.ac.id 3
Strategi Backup
Berdasarkan waktu pelaksanaanatau strategi terdapat dua jenis
operasi backup yaitu :
 Backup statis, dimana backup dilakukan dengan lebih dulu
menonaktifkan basisdata secara keseluruhan.
 Backup dinamis, dimana backup dilakukan tanpa penonaktifan
basis data

www.stmikelrahma.ac.id 4
Strategi recovery
Terdapat tiga pilihan skema untuk menjalankan mekanisme recovery
secara otomatis begitu kerusakan atau kegagalan sistem telah terjadi,
skema tersebut adalah :
1. File Log dengan Penundaan Pengubahan (Incremental Log with
Defered Update)
2. File Log dengan Pengubahan Langsung (Incremental Log with
Immediate Updates)
3. Page Bayangan (Shadow Paging), yang memerlukan akses ke
disk yang lebih sedikit.

www.stmikelrahma.ac.id 5
Recovery berbasis Log
o Sebuah log adalah pelindung kestabilan penyimpan.
• File log ini berisi log record, yang berkorelasi dengan semua operasi
perubahan pada basis data.
Ketika transaksi Ti mulai, dalam registernya akan tertulis
<Ti start>log record
Sebelum Ti execute write(X), dalam log record tertulis <Ti, X, V1, V2>, dimana V1
adalah nilai X sebelum ditulis, dan V2 adalah nilai yang baru dari X.
• Log record mencatat bahwa Ti telah melakukan penulisan pada Xj Xj
mempunyai nilai V1 sebelum ditulis, dan akan bernilaiV2 setelah transaksi write.
Ketika Ti selesai, log record menulis <Ti commit> .
Log record langsung menulis dalam penyimpan tetap bukan buffer
Dua pendekatan penggunaan log
1. Penundaan modifikasi database

2. Pengubahan langsung database

www.stmikelrahma.ac.id 6
Penundaan modifikasi database
Skema penundaan modifikasi database mencatat semua perubahan ke log,
tetapi menunda untuk writes setelah commit.
Anggap transaksi berjalan berurutan
Transaksi mulai dengan menulis record <Ti start> ke log.
Sebuah operasi write(X) menyimpulkan bahwa di log record telah tertulis <Ti,
X, V>, dimana V adalah nilai baru untuk X
Nilai lama tidak diperlukan dalam skema ini
ketika Ti telah commit, maka dalam log tertulis <Ti commit>
Akhirnya, log record dibaca dan digunakan untuk eksekusi penulisan
selanjutnya

www.stmikelrahma.ac.id 7
 Selama recovery sesudah rash, sebuah transaksi butuh
penyelesaian <Ti start> dan<Ti commit> dalam log.
 Penulisan ulang transaksi Ti ( redoTi) mengubah nilai data
menjadi baru.
 Contoh transaksi T0 dan T1 (T0 dieksekusi sebelum T1):
T0: read (A) T1 : read (C)
A:- A - 50 C:- C- 100
Write (A) write (C)
read (B)
B:- B + 50
write (B)

www.stmikelrahma.ac.id 8
 Berikut ditunjukkan log dari 3 transaksi.

 Jika ada kegagalan sistem:


1. redo(T0) yang membuat semua nilai item data yang diubah T0 ke
nilai-nilai baru
2. Untuk me-redo transaksi T0 hanya membutuhkan file log yang
mengandung dua buah record yang memuat <T0 start> dan <T0
commit>

www.stmikelrahma.ac.id 9
Pengubahan database
langsung
 Skema immediate database modification adalah mekanisme
dengan perubahan secara langsung ke basisdata meskipun
transaksi masih berlangsung.
 Update log record harus ditulis sebelum item database ditulis
 Perubahan aktual ke database tidak diperkenankan sebelum
record yang bersesuaian dalam file log dituliskan ke media
penyimpan stabil
 Sebelum eksekusi sebuah operasi output(B), record dalam file
log yang berhubungan dengan item data B telah ditulis dalam
media penyimpan stabil

www.stmikelrahma.ac.id 10
Log Write
Output
<T0 start>
<T0, A, 1000, 950>
To, B, 2000, 2050
A = 950
B = 2050
<T0 commit> x
<T1 start>
1

<T1, C, 700, 600>


C = 600
BB,
BC
<T1 commit>
BA
www.stmikelrahma.ac.id 11
 Prosedur recovery untuk sistem ini ada dua:
 undo(Ti) yang merekam kembali nilai semua item data yang
diubah oleh transaksi Ti ke nilai awalnya.
 redo(Ti) yang membuat semua nilai item data yang diubah oleh
transaksi Ti ke nilai barunya
 Setelah terjadi kerusakan database, skema recovery
akan melihat isi file log untuk mengetahui transaksi mana
yang akan diulangi, dan transaksi mana yang dibatalkan,
dengan aturan:
 Transaksi Ti harus dikembalikan ke kondisi awal (undo) jika dalam
file log ada record <Ti start>, tetapi tidak ada record <Ti
commit>.
 Transaksi Ti harus dituntaskan (redo) jika dalam file log ada
record <Ti start> dan <Ti commit>.
 Operasi undo dilaksanakan terlebih dahulu dari pada
redo.
www.stmikelrahma.ac.id 12
Contoh :

Recovery untuk setiap kasus :


(a) undo (T0): B kembali bernilai 2000 dan B ke 1000.
(b) undo (T1) dan redo (T0): C kembali menjadi 700, dan kemudian A dan
B diset ke 950 dan 2050 .
(c) redo (T0) dan redo (T1): A dan B di set ke 950 dan 2050
demikian pula C di set ke 600
www.stmikelrahma.ac.id 13
Shadow Paging
 Shadow paging adalah alternatif lain selain file log yang
memerlukan akses ke disk yang lebih sedikit.
 Dasar pemikiran: merawat dua halaman tabel selama transaksi
berlangsung current page table, dan shadow page table
 Simpan tabel bayangan dalam penyimpan tetap, dengan
demikian jejak transaksi tersimpan.
 Shadow page table tidak pernah berubah selama eksekusi
 Pada waktu mulai maka kedua tabel ditandai. Hanya page asli
yang digunakan selama eksekusi transaksi berlangsung.
 Kapanpun halaman ditulis untuk pertama kali
 Copy halaman ini diberikan ke halaman yang tidak dipakai.
 Halaman sekarang dipakai sebagai sumber untuk di copy
 Update dilakukan di copyan
www.stmikelrahma.ac.id 14
Sample
Page Table

www.stmikelrahma.ac.id 15
Tabel asli dan tabel bayangan terbentuk terbentuk setelah transa

www.stmikelrahma.ac.id 16
 Untuk mengcommit transaksi, harus dilakukan :
1. Menjamin semua page data yang ada dalam memori utama yang
telah diubah oleh transaksi, disalin ke dalam disk
2. Simpan tabel page yang aktif ke disk.
3. Simpan alamat disk dari tabel page aktif ke lokasi yang tetap dalam
media penyimpanan stabil yang telah berisi alamat tabel page
bayangan. Aksi ini melakukan penimpaan pada alamat tabel page
bayangan yang lama. Tabel page aktif akan menjadi tabel page yang
baru dan transaksi commit.
 Jika crash terjadi sebelum langkah ke 3 selesai dikerjakan, kita akan
kembali ke keadaan sebelum transaksi terjadi.
 Jika crash terjadi setelah langkah ke 3 maka efek transaksi tersimpan,
sehingga redo tidak perlu.

www.stmikelrahma.ac.id 17
 Keunggulan dari shadow-paging
 Tidak adanya tambahan waktu untuk penulisan record ke dalam file log
 Proses recovery lebih cepat karena tidak butuh undo atau redo
 Kelemahannya :
 Tambahan waktu untuk proses commit
 Proses commit sebuah transaksi membutuhkan sejumlah blok data untuk direkam,
seperti blok data aktual, tabel page aktif dan alamat disk dari tabel page aktif
 Pemisahan data ( fragmentasi )
 Skema shadow paging menyebabkan page database mengubah lokasinya saat
terjadi perubahan data, sehingga terjadi fragmentasi data yang dapat
memperlambat transfer data dari database ke main memory
 Data sampah (garbage)
 Setelah transaksi tercommit, page database yang berisi data versi lama telah
diubah menjadi tidak terakses dan page-page inilah yang disebut sampah
 Lebih sulit dalam mengembangkan algoritma supay transaksi berjalan konkuren
 Lebih menggunakan basis log

www.stmikelrahma.ac.id 18
Backup & recovery
dengan perintah SQL

 perintah-perintah yang digunakan adalah SELECT INTO OUTLIFE,


BACKUP TABLE, dan LOAD DATA INFILE.
 Sebelum proses backup dilakukan, harus dilakukan proses
penguncian pada table untuk memastikan tidak ada proses
penulisan atau perubahan data dalam tabel.

www.stmikelrahma.ac.id 19
Backup & recovery
dengan perintah SQL
Contoh berikut akan menampilkan proses backup dan recovery pada
table„mahasiswa‟ yang berada pada database „bella_db‟ :
1.Lakukan proses penguncian table dengan perintah :LOCK TABLE
nama_table WRITE;

2.Lakukan pengosongan memori atauFLUSH. Langkah ini diperlukan


untukmemastikan tidak ada proses yangberlangsung terhadap data
pada tabel „mahasiswa‟. Flush dilakukandengan perintah :FLUSH
TABLES;

www.stmikelrahma.ac.id 20
Backup & recovery
dengan perintah SQL

3. Lakukan proses backup table„mahasiswa‟ dengan perintah :SELECT


* INTO OUTFILE „backup_mahasiswa‟ FROM mahasiswa;

Jika proses backup berhasil maka akan muncul file backup_mahasiswa


pada direktori C:\xampp\mysql\data

www.stmikelrahma.ac.id 21
Backup & recovery
dengan perintah SQL

4.Data yang telah di-backup dapat dikembalikan kapan saja bila


diperlukan. Sintaks SQL yang digunakan adalah LOAD DATA
INFILE. Perintah yang dijalankan adalah :LOAD DATA INFILE
„backup_mahasiswa‟ INTO TABLE mahasiswa;

www.stmikelrahma.ac.id 22
Backup & recovery
dengan MySQL Dump

Tool MySQLdump memiliki kelebihan dalam proses backup database.


Tools ini akan melakukan backup database beserta struktur table di
dalamnya.Selain itu, file backup yang dihasilkand apat digunakan
bagi sistem database yang lain.
Langkah-langkah :
1.Jalankan shell atau commad-prompt dan ketikkan perintah berikut
untuk memulai dump database :
MySQLDUMP –u root –p –all-database
Perintah di atas akan melakukan backup pada semua database
yang ada pada MySQL

www.stmikelrahma.ac.id 23
Backup & recovery
dengan MySQL Dump
2.Proses backup atau dumping akan berlangsung beberapa saat
hingga muncul pesan “Dump completed”.

3.Data yang telah di-backup dapat direstrore kembali ke dalam


database dengan perintah :
MySQLdump –u root –p (nama_database) < c:\file_backup.sql
www.stmikelrahma.ac.id 24
sekian

terimakasih

www.stmikelrahma.ac.id 25

Anda mungkin juga menyukai