ဒါကေတာ့ sql replication ကို master to master လုပ္မွာျဖစ္ပါတယ္ . နမူနာအေနနဲ႔ ဆာဗာ ၁ နဲ႔ ၂ ဆိုျပီး စမ္းလုပ္ၾကည့္ရေအာင္
Master 1 IP Address : 172.168.0.1
Master 2 IP Address: 172.168.0.2
Database to replicate: db1, db2, and db3
ဒီနမူနာကို စမ္းမယ္သူအေနနဲ႔ လိုအပ္တဲ့ SQL ကိုသြင္းျပီးသားျဖစ္ေနေလာက္မွာပါ .. မရွိေသးရင္လည္းသြင္းလိုက္ျပီး ပါတ္စ္၀ါဒ့္တစ္ခါတည္းသက္မွတ္ေပးလိုက္ပါ ..
#yum install mysql mysql-server
#mysqladmin -u root password new_mysql_password
ေအာက္ကအဆင့္ေတြကေတာ့ ဆာဗာ ၂ ခုလံုးမွာ လုပ္မွာပါ .. ဆာဗာ ၁ ဆိုရင္ ဆာဗာ ၁ မွာ သံုးမယ့္ ကြန္မန္းလိုင္းေတြျဖစ္ျပီး ဆာဗာ ၂ ဆိုရင္ေတာ့ ၂ေအာက္မွာသံုးမွာပါ ..
ပထမဆံုးအေနနဲ႔ ဆာဗာ ၂ ခုလံုးရဲ႕ /var/log ေအာက္မွာ mysql ကိုတည္ေဆာက္ေပးျပီး owner ကိုလည္း mysql ဆိုျပီး ခ်ိန္းေပးထားလိုက္ပါ
#mkdir /var/log/mysql
#chown apache:apache /var/log/mysql
ွခု
ဆာဗာ ၁ ကေနစရေအာင္
sql ထဲ၀င္မယ္ ျပီးရင္ေအာက္ကအတိုင္းဆက္သြားလိုက္မယ္ ကြန္မန္႔ေတြ ဖတ္ရင္ သံုးရင္းနားလည္လိမ့္မယ္ထင္လို႔ တစ္ခုခ်င္းမရွင္းေတာ့ပါဘူး .. လိုအပ္ရင္ေတာ့ ျပန္ေမးလို႔ရပါတယ္ .. ( ^_^ )..
#mysql -u root -p
Enter Password:
mysql> CREATE USER '
slave_user'@'172.168.0.2' IDENTIFIED BY '
password';
Query OK, 0 rows affected (0.00 sec)
mysql> GRANT REPLICATION SLAVE ON *.* TO '
slave_user'@'172.168.0.2' IDENTIFIED BY '
password';
Query OK, 0 rows affected (0.00 sec)
mysql> FLUSH PRIVILEGES;
ဆာဗာ ၂ မွာလည္း အလားတူပဲသက္မွတ္ပါ့မယ္ ..
#mysql -u root -p
Enter Password:
mysql> CREATE USER '
slave_user'@'172.168.0.1' IDENTIFIED BY '
password';
Query OK, 0 rows affected (0.00 sec)
mysql> GRANT REPLICATION SLAVE ON *.* TO '
slave_user'@'172.168.0.1' IDENTIFIED BY '
password';
Query OK, 0 rows affected (0.00 sec)
mysql> FLUSH PRIVILEGES;
ဒါဆိုရင္ မာစတာအတြက္ လိုအပ္တာေတြျပင္ျပီးပါျပိ ခု
SLAVE အတြက္ လုပ္ပါ့မယ္ .. အဲဒါမတိုင္ခင္ sql config အရင္လုပ္ပါမယ္ . လုပ္မယ့္ ေနရာကေတာ့ /etc/my.cnf ဆိုတဲ့ configuration မွာပါ ..
ဆာဗာ ၁ ရဲ႕ /etc/my.cnf မွာေအာက္ကအတို္င္းထည့္ေပးမယ္.
server-id = 1
master-host =172.168.0.2
master-user =
slave_user
master-password =
password
master-connect-retry = 60
slave-net-timeout = 60
replicate-do-db = db1
replicate-do-db = db2
replicate-do-db = db3
log-bin = /var/log/mysql/mysql-bin.log
log-bin-index = /var/log/mysql/master-log-bin.index
binlog-do-db = db1
binlog-do-db = db2
binlog-do-db = db3
relay-log = /var/lib/mysqld-relay-bin
relay-log = /var/lib/mysql/slave-relay.log
relay-log-index = /var/lib/mysql/slave-relay-log.index
ဒီေအာက္ကေတာ့
ဆာဗာ ၂ ရဲ႕ /etc/my.cnf အထဲမွာ ထည့္မွာပါ