在MySQL數據庫中,主從與多主都是指數據庫的架構模型,通過數據庫復制技術使得多個數據庫可以同步更新。主從與多主都是針對于數據庫的復制策略,但是它們之間的差別還是有些許不同的,下文就來具體分析以下它們的區別。
主從復制是指將一臺MySQL服務器(稱之為主服務器)的數據復制到另外一臺或多臺MySQL服務器(稱之為從服務器)上,從服務器一般只充當查詢的角色,不做數據修改,而全部的寫操作都是在主服務器上進行的。
示例代碼: CHANGE MASTER TO MASTER_HOST='10.0.0.1', MASTER_USER='slave_user', MASTER_PASSWORD='password', MASTER_LOG_FILE='master-bin.00001', MASTER_LOG_POS=501, MASTER_CONNECT_RETRY=10;
多主復制和主從復制的最大差距點在于,多主復制的每個主節點都可以寫入數據,數據修改后會自動同步到其他節點上去,這種架構適用于多點寫入數據的環境,例如多Web服務器負載均衡。
示例代碼: server-id=1 auto_increment_increment=2 auto_increment_offset=1 log-bin=mysql-bin log-slave-updates replicate-same-server-id=0 relay-log=mysql-relay-bin relay-log-info-file=mysql-relay-log.info relay-log-index=mysql-relay-log.index binlog-ignore-db=mysql binlog-ignore-db=test
總而言之,主從與多主都是數據庫異地備份的重要手段,但是使用場景還是有所不同,需要注意選擇哪種數據復制策略與業務需求相符。
下一篇dockervul