資料庫的主從同步
㈠ mysql主備同步的原理
MYSQL主從同步原理:
1) MYSQL主從同步是非同步復制的過程,整個同步需要開啟3線程,master上開啟bin-log日誌(記錄資料庫增、刪除、修改、更新操作);
2) Slave開啟I/O線程來請求master伺服器,請求指定bin-log中position點之後的內容;
3) Master端收到請求,Master端I/O線程響應請求,bin-log、position之後內容返給salve;
4) Slave將收到的內容存入relay-log中繼日誌中,生成master.info(記錄master ip、bin-log、position、用戶名密碼);
5) Slave端SQL實時監測relay-log日誌有更新,解析更新的sql內容,解析成sql語句,再salve庫中執行;
6) 執行完畢之後,Slave端跟master端數據保持一致!
**MYSQL bin-log用途**
1) bin-log日誌最大的功能記錄資料庫增、刪、改、插入等操作,記錄用戶操作的SQL語句;
2) bin-log日誌可以用數據增量備份、完整備份;
3) bin-log還可以主要主從復制+讀寫分離;
㈡ 如何配置兩個MySQL資料庫之間的主從同步功能
IP的設置:A主機 IP:10.10.0.119;Mask:255.255.0.0;B主機 IP:10.10.8.112;Mask:255.255.0.0
在IP設置完成以後,需要確定兩主機的防火牆確實已經關清橋閉。可以使用命令service iptables status查看防火牆狀態。如果防火牆狀態。
為仍在運行。使用service iptables stop來停用防火牆。如果想啟動關閉防火牆,可以使用setup命令來禁用或定製。最終以兩台主機可以相互ping通為佳。
3.2 配置A主(master) B從(slave)模式;3.2.1 配置A 為master。
增加一個用戶同步使用的帳號:
GRANT FILE ON *.* TO 『backup』@'10.10.8.112' IDENTIFIED BY 『1234』;
GRANTREPLICATION SLAVE ON *.* TO 『backup』@'10.10.8.112' IDENTIFIED BY 『1234』。賦予隱正缺10.10.8.112也就是Slave機器有File許可權,只賦予Slave機器有File許可權還不行,還要給它REPLICATION SLAVE的許可權才可以。
增加一個資料庫作為同步資料庫:create database test;
創建一個表結構:create table mytest (username varchar(20),password varchar(20));
修改配置文件:修改A的/etc/my.cnf文件。