資源描述:
《MySQL主-主雙向同步測試報(bào)告》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、MySQL主-主雙向同步測試報(bào)告一、測試環(huán)境服務(wù)器1(Master1):IP地址:192.168.0.20,操作系統(tǒng):WindowsXPSP3,MySQL版本:5.5.11服務(wù)器2(Master2):IP地址:192.168.0.252,操作系統(tǒng):WindowsXPSP3,MySQL版本:5.5.11前提條件:服務(wù)器1和服務(wù)器2中MySQL數(shù)據(jù)庫的個(gè)數(shù)、名稱,數(shù)據(jù)表的個(gè)數(shù)、名稱、結(jié)果強(qiáng)烈建議一致,并且MySQL的版本保證一致,且在5.0以上。Linux系統(tǒng)下配置方法與Windows系統(tǒng)相同,只是需要注意配置文件為my.cnf,且配置文件中一定要注意將b
2、ind-address=127.0.0.1注釋,否則,遠(yuǎn)程無法登錄MySQL數(shù)據(jù)庫,更談不上同步。二、同步原理兩臺(tái)數(shù)據(jù)庫服務(wù)器既為主服務(wù)器,亦為從服務(wù)器。某一時(shí)刻只允許某臺(tái)服務(wù)器進(jìn)行數(shù)據(jù)更新操作,另外一臺(tái)服務(wù)器同步數(shù)據(jù)。換言之,兩臺(tái)服務(wù)器互為對方的主服務(wù)器,亦互為對方的從服務(wù)器。主服務(wù)器用于數(shù)據(jù)更新或者(和)查詢操作,從服務(wù)器用于數(shù)據(jù)同步和查詢操作。三、服務(wù)器配置1)在服務(wù)器1上為服務(wù)器2授權(quán)同步賬戶執(zhí)行SQL指令:mysql>GRANTREPLICATIONSLAVEON*.*TO‘SlaveRepl1’@’192.168.0.252’IDENTIF
3、IEDBY‘123456’;mysql>FLUSHPRIVILEGES;圖1為服務(wù)器2授權(quán)同步賬戶2)在服務(wù)器2上為服務(wù)器1授權(quán)同步賬戶執(zhí)行SQL指令:mysql>GRANTREPLICATIONSLAVEON*.*TO‘SlaveRepl2’@’192.168.0.20’IDENTIFIEDBY‘123456’;mysql>FLUSHPRIVILEGES;圖2為服務(wù)器1授權(quán)同步賬戶3)停止服務(wù)器1和服務(wù)器2上MySQL數(shù)據(jù)庫服務(wù)4)修改服務(wù)器1和服務(wù)器2的配置文件my.ini(Linux下為my.cnf)A)服務(wù)器1[mysqld]log-bin=m
4、ysql-bin#記錄二進(jìn)制日志文件server-id=1#服務(wù)器ID標(biāo)識(shí),每臺(tái)服務(wù)器必須唯一binlog-ignore-db=mysql#通知主服務(wù)器忽略記錄二進(jìn)制日志的數(shù)據(jù)庫replicate-ignore-db=mysql#通知從服務(wù)器忽略同步復(fù)制的數(shù)據(jù)庫log-slave-updates#通知從服務(wù)器將更新記錄二進(jìn)制日志文件sync_binlog=1#保證事務(wù)InnoDB復(fù)制設(shè)置的innodb_flush_log_at_trx_commit=1#最大可能的耐受性和一致性auto_increment_increment=2#控制自增列列值增加的間
5、隔auto_increment_offset=1#控制自增列列值的起點(diǎn)log-warnings#輸出更詳細(xì)的執(zhí)行操作信息A)服務(wù)器2[mysqld]log-bin=mysql-bin#記錄二進(jìn)制日志文件server-id=2#服務(wù)器ID標(biāo)識(shí),每臺(tái)服務(wù)器必須唯一binlog-ignore-db=mysql#通知主服務(wù)器忽略記錄二進(jìn)制日志的數(shù)據(jù)庫replicate-ignore-db=mysql#通知從服務(wù)器忽略同步復(fù)制的數(shù)據(jù)庫log-slave-updates#通知從服務(wù)器將更新記錄二進(jìn)制日志文件sync_binlog=1#保證事務(wù)InnoDB復(fù)制設(shè)置的
6、innodb_flush_log_at_trx_commit=1#最大可能的耐受性和一致性auto_increment_increment=2#控制自增列列值增加的間隔auto_increment_offset=2#控制自增列列值的起點(diǎn)log-warnings#輸出更詳細(xì)的執(zhí)行操作信息注:::紅色部分非常重要,如果一個(gè)服務(wù)器當(dāng)?shù)舻脑挘硗庖粋€(gè)服務(wù)器馬上接管;::紫紅色部分標(biāo)識(shí)服務(wù)器頻繁二進(jìn)制日志文件,保證一條服務(wù)器當(dāng)?shù)舻脑挘罩舅⑿碌搅硗庖慌_(tái),最大限度保證數(shù)據(jù)的同步;::每臺(tái)服務(wù)器配置的auto_increment_offset必須不一樣,其最大值建議
7、與auto_increment_increment相同。一個(gè)數(shù)據(jù)庫復(fù)制同步群中,有多少臺(tái)主服務(wù)器(或者預(yù)期會(huì)轉(zhuǎn)化為主服務(wù)器),auto_increment_increment就設(shè)置多少,且每臺(tái)服務(wù)器上的設(shè)置值必須保證一致;::根據(jù)需要配置忽略同步復(fù)制的數(shù)據(jù)庫,有多少個(gè)數(shù)據(jù)庫需要忽略,則需配置多少行binlog-ignore-db和replicate-ignore-db。如果每個(gè)數(shù)據(jù)庫欲保留其本身獨(dú)立的權(quán)限分配和系統(tǒng)參數(shù),建議將系統(tǒng)數(shù)據(jù)庫mysql、information_schema、performance_schema忽略同步復(fù)制;5)啟動(dòng)服務(wù)器1和
8、服務(wù)器2上MySQL數(shù)據(jù)庫服務(wù)。6)獲取服務(wù)器主數(shù)據(jù)庫狀態(tài)A)參照圖3所示,獲取服務(wù)器1的狀態(tài)