MySQL複製在業界有叫:mysql同步,ab複製等。專業名稱就是叫:複製
複製是單向的,只能從master複製到slave上,延時基本上是毫秒的。
一組複製結構中可以有多個slave,對於master一般場景推薦只有一個。
master使用者寫入數據,產生event記到binary log中
slave接收master上傳來的binlog,然後依序套用,重現master上的使用者操作。
記錄最小的單位是一個event,日誌前4個位元組是一個magic number,接下來19個位元組記錄formatt desc event:FDE
MySQL5.6增加了GTID複製
要求:
1、 主庫上線,主庫不停止服務的前提下做主從複製
2、 新上新增一個為「操作:
1、 在主函式庫匯出資料(主函式庫正常運作);
3、 叢庫復原資料庫;
〠#㠀〠#㠀〠權限Mysql > GRANT REPLICATION SLAVE ON *.* TO 'repluser'@'3.9.8.%' IDENTIFIED BY 'replpass';Mysql > flush privileges;
############' ##5、 設定為伺服器的防火牆,讓防火牆可透過3306連接埠####### vim /etc/sysconfig/iptables ######新增#####-A INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT(允許3306埠通過防火牆)######重啟防火牆服務,使其生效#######service iptables restart#######6 , 叢庫修改設定檔####### vim /etc/my.cnf######新增###### #### ##### #7、 以主mysql使用主mysql建立的帳號密碼登入並複製###### mysql> change master to master_host='3.9.8.13', master_&user; change master to master_host='3.9.8.13', master_&user; master_auto_position=1;###### #########8、 叢庫啟動主從複製(可能會報錯,參考10.問題1) ;######9、 偵測主從複製###### mysql> show slave status\G######10、 〠1 2 :slave failed to initialize relay log info structure from the repository.####### ######mysql> reset slave; mysql> change master to master_host='3.9.8.13', master_user='repluser',master_password='replpass',master_auto_position=1; mysql> start slave;#################
以上是mysql GTID主從複製詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!