1、主從服務(wù)器分別作以下操作:
版本一致
初始化表,并在后臺啟動mysql
修改root的密碼
2、修改主服務(wù)器master:
#vi /etc/my.cnf
[mysqld]
log-bin=mysql-bin?? //[必須]啟用二進制日志
server-id=222 ? ? ?//[必須]服務(wù)器唯一ID,默認是1贴汪,一般取IP最后一段
3、修改從服務(wù)器slave:
#vi /etc/my.cnf
[mysqld]
log-bin=mysql-bin?? //[不是必須]啟用二進制日志
server-id=226 ? ? ?//[必須]服務(wù)器唯一ID休吠,默認是1扳埂,一般取IP最后一段
4、重啟兩臺服務(wù)器的mysql
/etc/init.d/mysql restart
5瘤礁、在主服務(wù)器上建立帳戶并授權(quán)slave:
#/usr/local/mysql/bin/mysql -uroot -pmttang
mysql>GRANT REPLICATION SLAVE ON *.* to 'mysync'@'%' identifiedby 'q123456'; //一般不用root帳號阳懂,“%”表示所有客戶端都可能連,只要帳號柜思,密碼正確岩调,此處可用具體客戶端IP代替,如192.168.145.226赡盘,加強安全号枕。
6、登錄主服務(wù)器的mysql陨享,查詢master的狀態(tài)
mysql>show master status;
|File ? ? ? ? ? ? ? ? ? ? ? ? ?|Position ? | Binlog_Do_DB | Binlog_Ignore_DB |
============================================
?mysql-bin.000004 ? ? ? 308
1 row in set (0.00 sec)
注:執(zhí)行完此步驟后不要再操作主服務(wù)器MYSQL葱淳,防止主服務(wù)器狀態(tài)值變化
7钝腺、配置從服務(wù)器Slave:
mysql>change master tomaster_host='192.168.145.222',master_user='mysync',master_password='q123456',
master_log_file='mysql-bin.000004',master_log_pos=308;?? //注意不要斷開,308數(shù)字前后無單引號蛙紫。
Mysql>start slave;??? //啟動從服務(wù)器復(fù)制功能
8拍屑、檢查從服務(wù)器復(fù)制功能狀態(tài):
mysql> show slave status\G途戒;
Slave_IO_State: Waiting formaster to send event
Master_Host:192.168.2.222? //主服務(wù)器地址
Master_User: mysync ? //授權(quán)帳戶名坑傅,盡量避免使用root
Master_Port: 3306 ??//數(shù)據(jù)庫端口,部分版本沒有此行
Connect_Retry: 60
Master_Log_File:mysql-bin.000004
Read_Master_Log_Pos: 600? ? //#同步讀取二進制日志的位置喷斋,大于等于Exec_Master_Log_Pos
Relay_Log_File:ddte-relay-bin.000003
Relay_Log_Pos: 251
Relay_Master_Log_File:mysql-bin.000004
Slave_IO_Running: Yes ??//此狀態(tài)必須YES
Slave_SQL_Running: Yes ?? //此狀態(tài)必須YES
Slave_IO及Slave_SQL進程為YES成功唁毒,NO為失敗
主從服務(wù)器配置完成。
9星爪、主從復(fù)制測試:
主服務(wù)器Mysql浆西,建立數(shù)據(jù)庫,并在這個庫中建表插入一條數(shù)據(jù):
從服務(wù)器如果有主服務(wù)器建的數(shù)據(jù)庫顽腾,并且這個庫中也有剛剛插入的數(shù)據(jù)就成功了