BismiLLahi aRRohman aRRohim…
Tips ringan buat temen-temen yang sering berurusan sama database khususnya mysql, kata orang-orang tua dulu : “sedia payung sebelum hujan”, ya! sedia backup sebelum mesin database utama rusak / crash / terhapus / dll yang bisa berakibat fatal terhadap aplikasi / front end yang digunakan, apalagi aplikasi penting yang menyangkut hajat hidup orang banyak
Inti dari replikasi sebenarnya simple, bikin duplikat dari mesin utama (master) ke mesin cadangan (slave). Ini dia yang harus dipersiapkan:
- [Hot Cappuccino 1 cangkir]
- [Brownies kukus secukupnya]
- Haha
yang diatas itu optional - Yang jelas harus ada 2 mesin, 1 master – 1 slave (backup)
- Jelas juga harus tau IP dari masing-masing mesin, contoh disini master = 192.168.12.11, slave = 192.168.12.12
- dan masing-masing mesin harus udah keinstall mysql-server, kalo belum? install dulu
Caranya pun cukup simple (Sesuaikan dengan kondisi yang ada), contoh disini kita akan mereplikasi database dbPenting :
Di sisi master (192.168.12.11)
Buat user di mysql dan beri hak akses replication slave, contoh usernya disini “pencadangan”
mysql>; grant replication slave on *.* to pencadangan@192.168.12.12 identified by 'passwordSlavenya'; Query OK, 0 rows affected (0.08 sec) mysql>; \q Bye
Lalu edit file konfigurasi mysql (my.cnf)
# pico /etc/mysql/my.cnf
dan tambahkan baris berikut ini (kalo dah ada, tinggal diedit / ilangin mark# nya aja) :
server-id = 1 log_bin = /var/log/mysql/mysql-bin.log expire_logs_days = 10 max_binlog_size = 100M binlog_do_db = dbPenting
lalu restart service mysql / mysqld nya
# service mysql restart
Selanjutnya dump isi dan struktur database dbPenting untuk direstore ke server slave
mysqldump -u root -p passRoot dbPenting >; /home/user/backupDbPenting.sql
Cek status master server :
</p> # mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 848186 Server version: 5.0.67-0ubuntu6-log (Ubuntu) Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql>; show master status; +------------------+----------+--------------+ | File | Position | Binlog_Do_DB | +------------------+----------+--------------+ | mysql-bin.000002 | 647 | dbPenting | +------------------+----------+--------------+ 1 row in set (0.00 sec) mysql>;
Ingat nama File (mysql-bin.000002) dan Position (647) dari status master tersebut.
Di sisi slave (192.168.12.12)
Edit file konfigurasi mysql (my.cnf)
# pico /etc/mysql/my.cnf
dan tambahkan baris berikut ini (kalo dah ada, tinggal diedit / ilangin mark# nya aja) :
server-id = 2 master_host = 192.168.12.11 master_user = pencadangan master_password = passwordPencadangan master_port = 3306
Buat database yang sama dengan database master :
</p> # mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 848186 Server version: 5.0.67-0ubuntu6-log (Ubuntu) Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql>; create database dbPenting; Query OK, 1 row affected (0.08 sec) mysql>;\d bye
# mysql -u root -p passwordRoot dbPenting ; backupDbPenting.sql
lalu restart service mysql / mysqld nya
# service mysql restart
Mari kita lihat hasil kerja kita :
# mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 848186 Server version: 5.0.67-0ubuntu6-log (Ubuntu) Type 'help;' or '\h' for help. Type '\c' to clear the buffer. mysql>; stop slave; Query OK, 0 rows affected (0.00 sec) change master to master_host = '192.168.12.11', master_user = 'pencadangan', master_password = 'passwordSlavenya', master_log_file = 'mysql-bin.000002', master_log_pos = '647', master_connect_retry=10; Query OK, 0 rows affected (0.00 sec) mysql>; start slave; Query OK, 0 rows affected (0.00 sec) mysql>; show slave status \G; *************************** 1. row *************************** Slave_IO_State: Waiting for master to send event Master_Host: 118.97.55.213 Master_User: replikasi Master_Port: 3306 Connect_Retry: 10 Master_Log_File: mysql-bin.000002 Read_Master_Log_Pos: 647 Relay_Log_File: mysqld-relay-bin.000009 Relay_Log_Pos: 235 Relay_Master_Log_File: mysql-bin.000002 Slave_IO_Running: Yes Slave_SQL_Running: Yes Replicate_Do_DB: Replicate_Ignore_DB: Replicate_Do_Table: Replicate_Ignore_Table: Replicate_Wild_Do_Table: Replicate_Wild_Ignore_Table: Last_Errno: 0 Last_Error: Skip_Counter: 0 Exec_Master_Log_Pos: 647 Relay_Log_Space: 235 Until_Condition: None Until_Log_File: Until_Log_Pos: 0 Master_SSL_Allowed: No Master_SSL_CA_File: Master_SSL_CA_Path: Master_SSL_Cert: Master_SSL_Cipher: Master_SSL_Key: Seconds_Behind_Master: 0 1 row in set (0.00 sec) mysql>;
Yak, sampe disini replikasi telah berjalan dengan baik, Mari sedia payung sebelum hujan
____________
referensi : http://dev.mysql.com/doc | http://dev.mysql.com/doc/refman/5.1/en/replication.html

riez bilang gini :
Assalamu’alaykum wr. wb…
weww… penting banget nih bikin payung, eh sedia payung
Thanks ndri
[balesss]
ãñÐrî ñâwáwï bilang gini :
Wa’alaikumsalam WarohmatuLLohi Wabarokatuhu…
thanks juga ya atas akun akun nya, hihihiii
Bethulll, daripada kejadian… mending jaga-jaga dulu ziz
[balesss]
riez bilang gini :
hmmm… bisa nda ya ngdump db RS, hihihi…
[balesss]
lukman bilang gini :
jadi ojek payung yang seperti ini sepertinya bagus jugak
[balesss]
ãñÐrî ñâwáwï bilang gini :
Iya lukman, palagi pas musim ujan…
Ehhh, brarti aku lagi ngojek payung ya sekarang
[balesss]
andy.web.id bilang gini :
nyembah2 (worship)…
aku ambil bagian skrinsut yang mesum2 saja dan yang ringan dan yang lucu…
[balesss]
ãñÐrî ñâwáwï bilang gini :
Welehhh…
Jagonya ubuntu kok, ga boleh gitu
[balesss]
superaman bilang gini :
masih puyeng bacanya.. hehehe..
buat referensi dulu aja..
[balesss]
ãñÐrî ñâwáwï bilang gini :
Aku aja yang nulis puyeng kang
[balesss]
salim bilang gini :
Ass.
kang andry, mungkin kang andri ga tahu spa aku nih, tapi yg jelas ketika aku kuliah aku sering liat kang andry yang kuliah bagian malam, oia kang aku benar2 ga ngerti my SQL untuk apa, biar alumni stikom binaniaga bogor aku ga belajar??
[balesss]
ãñÐrî ñâwáwï bilang gini :
Wa’alaikumsalam…
Wahhh emang iya yach? maklum saya nya yang ngga gawul kali yach, hihii
Moso lulusan stikom ga ngerti MySQL buat apa
[balesss]
Kuliah Gratis bilang gini :
Waduch ilmuku belum sampai segitu………
[balesss]
Aden Kejawen bilang gini :
keren banget postingnya
tapi jujur bingung
[balesss]
ãñÐrî ñâwáwï bilang gini :
bingungnya disebelah mana bro?
[balesss]
ajengkol bilang gini :
Roming neh … btw sukses buat Dimas yah
[balesss]
ãñÐrî ñâwáwï bilang gini :
heheee, makasih mbak ajeng
[balesss]
uzakuza bilang gini :
nice inpo…
hampir sama kayak di http://dudulz.wordpress.com/2009/02/27/mysql-replication/
sayang na , daku cm pake mysql buat local sajah.. jadi cm backup2 biasa … bukan database administrator
[balesss]
ãñÐrî ñâwáwï bilang gini :
Yak, intinya emang sama… sedia payung sebelum hujan
tapi suatu saat mungkin membutuhkan, kalo si mysqlnya dah disuruh ngehandle app yang penting, kaya aku kemaren, wuihhh kepake banget replikasinya, begitu main server ngedrop langsung diarahin ke ip slave, dan lancar lagi
[balesss]
quantro bilang gini :
salam om….
panjang banget yak…..
belum sempet nyoba sendiri sih…
moga suatu saat bisa nyoba….
[balesss]
ãñÐrî ñâwáwï bilang gini :
Wa’alaikumsalam
Coba aja, itu panjang gara2 output & skripnya disertain kok, kalo cuma commandnya mah dikit
[balesss]
katakataku bilang gini :
[balesss]
ãñÐrî ñâwáwï bilang gini :
Woohhh, kemana aja
heheee
[balesss]
deanet bilang gini :
nice info gan :beer: ..
[balesss]
ãñÐrî ñâwáwï bilang gini :
Wahhh, kaskuser nihhh
[balesss]
endar bilang gini :
waduh puyeng deh lihat kode kode seperti itu. pengen belajar cara memulainya gimana ya?
[balesss]
ãñÐrî ñâwáwï bilang gini :
dicoba aja mas… benernya mudah kok, asal dicoba
[balesss]
dermawan bilang gini :
wah… koq pas nemu yah blog yg sipp ini pas lg setup replication server sendiri….
mas, mau tanya nih… kalo misalnya udah berhasil setup dan jalan replication server-nya… trus kalo misalnya slave-nya pas mati (mungkin mati listrik) trus master-nya kan jalan terus…
nah pas slave-nya nyala… apa yg terjadi? apa bisa diupdate semua yg ketinggalan itu?
masih pertama kali setup replication server nih… mohon bantuannya mas
[balesss]
ãñÐrî ñâwáwï bilang gini :
pengalaman saya kemaren tetap terupdate mas, mungkin ada lag sedikit itu tergantung traffic… kemaren saya pake buat applikasi yang diakses 1 kota, backend pake master front end pake slave, dan alhamduliLLah lancar. semoga membantu
[balesss]
dermawan bilang gini :
wah… cepet bener balesnya mas…. salam kenal nama saya Dermawan… eh ya… boleh tukeran IM? utk diskusi soal ini lebih lanjut, kalau berkenan
YM saya: dermawan123 atau MSN: dermawan123@hotmail.com
[balesss]
ãñÐrî ñâwáwï bilang gini :
kebetulan lagi pas online n ngecek komen
salam kenal juga mas Dermawan, saya andri… ym saya : andriy_rolas tapi kebetulan lagi ngga online ym nih, add aja
[balesss]
fajar bilang gini :
mantap infonya trims
[balesss]
medi bilang gini :
sory nih kang andry mo tanya.eh salam knal dulu dehh…
untuk bagian yg ini
Lalu edit file konfigurasi mysql (my.cnf)
view sourceprint?
1.# pico /etc/mysql/my.cnf
dan tambahkan baris berikut ini (kalo dah ada, tinggal diedit / ilangin mark# nya aja) :
view sourceprint?
1.server-id = 1
2.log_bin = /var/log/mysql/mysql-bin.log
3.expire_logs_days = 10
4.max_binlog_size = 100M
5.binlog_do_db = dbPenting
maksudnya konfigurasi gmn ya ? emang file my.cnf itu ada dimana ya…? maklum kang,saya baru belajar cara membuat replikasi database.mohon pencerahanya ya kang…
[balesss]
andri nawawi bilang gini :
my.cnf (linux) / my.ini (windows) adalah file konfigurasi mysql server.
Mas medi pake linux / windows…?
kalau pake linux, lokasi my.cnf itu ada di direktori : /etc/mysql/
kalau pake linux dengan lampp my.cnf ada di direktori : /opt/lampp/etc/
kalau pake xampp windows my.ini ada di direktori : \xampp\mysql\bin\
semoga membantu
[balesss]
ache bilang gini :
Asslam pak,
keren bgd pak posting’a n psti brguna bwt khlayak bnyak, tp jujur sya msih buta akan itu smua’a pak, hehe”
mklum blum 1 bln ktmu linux.
pak kira” ada wktu gak bwt ngjarin sya biar bsa nguasain OS linux ini, mnimal bwt pmbuatan program web n manajemen file database mysql deh pak…
sya n yg lain jga kn mw nnti’a klo dah jago kya bpk pngen bagi” ilmu ke orang biar bsa brmanfaat…
hehe”
[balesss]