Sistem Manajemen Basis Data
Replikasi Basis Data
Salhazan Nasution, S.Kom ,
Replikasi Basis Data Replikasi Basis Data
Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom
2
Replikasi Basis Data • Replikasi adalah suatu teknik untuk melakukan py dan pendistribusian data dan objek‐ p j copy objek database dari satu database ke database lain yang lokasinya terpisah secara fisik lain yang lokasinya terpisah secara fisik. • Dengan menggunakan teknik replikasi ini, data dapat didistribusikan ke lokasi yang berbeda melalui koneksi jaringan lokal maupun j g p internet. Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom
3
Model Replikasi • • • •
One master, one slave. One master many slave One master, many slave. Master/slave circular relationship. Master/slave “daisy chain”
Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom
4
Model Replikasi
One master, one slave.
Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom
5
Model Replikasi
One master, many slave.
Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom
6
Model Replikasi
Master/slave circular relationship
Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom
7
Model Replikasi
Master/slave “daisy chain” Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom
8
Jenis Replikasi • Replikasi Synchronous • Replikasi Asynchronous Replikasi Asynchronous
Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom
9
Replikasi Synchronous • Proses dilakukan secara real‐time antara master dengan slave. • Keseluruhan proses penulisan pada disk master dan slave harus selesai terlebih dahulu sebelum beranjak ke transaksi selanjutnya. • Kebutuhan akan performansi sistem yang tinggi p y g gg harus dipertimbangkan (kecepatan & jarak antar site/node) • Keuntungannya : menyediakan recovery yang j g konsisten karena sinkronisasi data terjaga. Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom 10
Replikasi Synchronous
Proses : Client p Master Database p Slave Database p Client. Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom 11
Replikasi Asynchronous • Proses replikasi terjadi setelah transaksi di master selesai. • Pertukaran data secara buffering, data akan diletakkan dalam sebuah buffer terlebih dahulu, kemudian pada jangka waktu tertentu akan direplikasi ke disk slave. • Tidak menjamin kesinkronan data apabila salah satu site/node mengalami crash saat replikasi belum selesai dilaksanakan. g y p • Keuntungan : efektifitas biaya proses transaksi Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom 12
Replikasi Asynchronous
Proses : Client p Master Database p Client. Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom 13
Any Question?
Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom 14
Replikasi Basis Data MySQL
Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom 15
Replikasi pada MySQL • Mulai versi 5.0 MySQL sudah mendukung sistem replikasi yang mana sebuah database server yang b f berfungsi sebagai master dapat tereplikasi b d lk datanya ke dalam satu atau lebih database server yang difungsikan sebagai slave. dif ik b i l • Model replikasi pada MySQL adalah Asynchronous. • Replikasi dapat diberlakukan pada sebagian tabel atau pada keseluruhan database, tergantung pada kebutuhan. Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom 16
Studi Kasus Database Toserba
Jakarta (master) ( )
Jogjakarta (slave) gj ( )
IP address : 192.168.10.1
IP address : 192.168.10.2
Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom 17
Step by Step 1. 2 2. 3. 4. 5 5. 6.
Koneksi jaringan (master & slave) Instalasi MySQL versi 5 2 (master & slave) Instalasi MySQL versi 5.2 (master & slave) Create database (master & slave) Konfigurasi master server. Konfigurasi slave Konfigurasi slave. Testing.
Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom 18
Koneksi Jaringan 1. Lakukan konfigurasi jaringan komputer server p pada master & slave. Master : 192.168.10.1 Slave : 192.168.10.2 2. Test koneksi (ping) Test koneksi (ping)
Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom 19
Instalasi MySQL 5.2 1. Lakukan instalasi MySQL komputer server & slave. 2. Pada halaman Setup Type, pilih “Typical”. 3 Pada halaman MySQL.com Sign‐Up, pilih 3. Pada halaman MySQL com Sign‐Up pilih “Skip Sign‐Up” 4 Setelah proses instalasi selesai, lakukan 4. S t l h i t l i l i l k k proses konfigurasi MySQL server dengan memberi tanda “9” b i d “9” pada “Configure the d “C fi h MySQL Server Now” di tahap akhir instalasi. Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom 20
Instalasi MySQL 5.2 5. Pada halaman MySQL Server Instance Configuration, pilih “Standard Configuration”. 6. Di halaman selanjutnya, beri tanda “9” pada Install As Windows Service, Launch the MySQL Server Automaticaly dan Include Bin Directory in Windows PATH. 7. Pada halaman selanjutnya, masukkan password untuk MySQL. Misal : “1234”. 8. Pada halaman terakhir, klik tombol “Execute” g p g untuk mengakhiri proses konfigurasi. Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom 21
Create Database 1. Masuk ke command prompt, login ke MySQL dengan mengetik perintah : mysql –u root –p{password user}
2. Buat database dengan nama “toserba”, ketik perintah: create database toserba;
3. Lakukan hal yang sama pada komputer slave. Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom 22
Konfigurasi Master 1. Buka file my.ini, yang terdapat pada C:\Program Files\MySQL\MySQL Server 5.2
2. Ketikkan perintah berikut di bawah tanda [mysqld] server-id=1 log-bin=mysql-bin
3. Restart Restart MySQL. MySQL. 4. Masuk ke command prompt dan login ke MySQL dengan mengetikkan perintah : dengan mengetikkan perintah : mysql –u root –p{password user} Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom 23
Konfigurasi Master 5. Berikan hak akses pada slave untuk dapat melakukan replikasi. Jalankan perintah : grant replication slave on *.* to
[email protected] identified by 'jogja';
jogja 192.168.10.2 jogja
p username p alamat slave p password
Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom 24
Konfigurasi Master 6. Jalankan perintah : flush privileges; p g use toserba; flush tables with read lock;
toserba
p nama database yang akan direplikasi
Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom 25
Konfigurasi Master 7. Jalankan perintah : show master status;
setelah melakukan perintah diatas, akan muncul keluaran seperti ( p p ) ini (bisa berbeda tiap komputer) :
catat nama File (mysql-bin.000001) dan Posisiton (2910), akan digunakan untuk konfigurasi selanjutnya Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom 26
Konfigurasi Master 8. Langkah terakhir, jalankan perintah berikut : unlock tables;
9 Kemudian keluar dari MySQL : 9. Kemudian keluar dari MySQL : quit;
Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom 27
Konfigurasi Slave 1. Buka file my.ini, yang terdapat pada C:\Program Files\MySQL\MySQL Server 5.2
2 Ketikkan perintah berikut di bawah tanda 2. Ketikkan perintah berikut di bawah tanda [mysqld] [ ld] server-id=2 master-host=192.168.10.1 master-user=jogja master-password=jogja master connect retry 60 master-connect-retry=60 replicate-do-db=toserba
192.168.10.1 jogja d t b database
p alamat host l th t p username & password p database yang direplikasi database yang direplikasi Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom 28
Konfigurasi Slave 3. Restart MySQL. p p g y 4. Masuk ke command prompt dan login ke MySQL dengan mengetikkan perintah : mysql –u root –p{password user}
5. Jalankan perintah : stop slave;
Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom 29
Konfigurasi Slave 6. Selanjutnya jalankan perintah : CHANGE MASTER TO MASTER_HOST='192.168.10.1', MASTER USER='jogja' MASTER_USER= jogja , MASTER_PASSWORD='jogja', MASTER_LOG_FILE='mysql-bin.000001', MASTER LOG POS 2910 MASTER_LOG_POS=2910;
p alamat host alamat host jogja p username & password mysql-bin.000001 mysql bin 000001 p nama log file nama log file 2910 p log position 192 168 10 1 192.168.10.1
Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom 30
Konfigurasi Slave 7. Langkah terakhir, jalankan perintah : start slave;
8. Keluar dari MySQL : quit;
Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom 31
Testing • Setelah langkah‐langkah di atas selesai dilakukan dan l h l k h l k h di l i dil k k d konfigurasi sudah dilakukan dengan benar, maka lakukan uji coba dengan membuat tabel dan mengisi tabel uji coba dengan membuat tabel dan mengisi tabel tersebut pada komputer server. • Jika proses replikasi berhasil dilakukan, maka segala Jik lik i b h il dil k k k l perubahan yang terjadi di komputer server akan terjadi pula pada komputer slave pula pada komputer slave. • Tapi perubahan pada komputer slave tidak berpengaruh pada komputer master karena replikasi ini bersifat one pada komputer master, karena replikasi ini bersifat one‐ way. Artinya replikasi hanya terjadi pada komputer server kepada komputer slave namun tidak sebaliknya server kepada komputer slave, namun tidak sebaliknya. Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom 32
Any Question? See you next time.. time
Sistem Manajemen Basis Data (Genap 08/09) ‐ Salhazan Nasution, S.Kom 33