MySQL主從環境搭建配置詳解

來源:互聯網
上載者:User

=Start=

緣由:

工作需要,學習需要。

本文:

MySQL的主從架構:

由一個MySQL執行個體作為主庫,接受讀寫請求,另外一個或多個MySQL執行個體通過MySQL的複製機制,將主庫的資料同步到從庫,從庫會設定唯讀,防止主從資料不一致。

主從架構的好處:

如果主伺服器出現問題,可以快速切換到從伺服器提供服務;
可以在從伺服器上執行查詢,降低主伺服器的壓力;
可以在從伺服器上執行備份,以避免備份期間影響主伺服器的效能。
主從架構的局限:

由於MySQL實現的是非同步複製,所以主從伺服器之間的資料存在一定差異(延遲),對即時性要求高的資料仍然需要從主伺服器上獲得。

主從搭建步驟:

Step

主庫(Master)

從庫(Slave)


修改主庫my.cnf設定檔,然後 需要重啟生效

[mysqld]
 
#作為主庫
#啟動二進位檔案(*)
log-bin=mysql-bin
#伺服器ID(*)
server-id=1
 
#需要備份的資料庫,多個寫多行
binlog-do-db=orders
#不需要備份的資料庫,多個寫多行
binlog-ignore-db=mysql
修改從庫my.cnf設定檔,然後 需要重啟生效

[mysqld]
 
#作為從庫(如果有多個從庫,在各自的my.cnf中的server-id需要各不相同)
server-id=2
 
replicate-do-db=bash  #只複製某個庫,多個寫多行
replicate-ignore-db=mysql #不複製某個庫,多個寫多行
replicate-ignore-db=test
replicate-ignore-db=information_schema
2 建立從庫用於串連主庫的帳號(repl)
mysql> GRANTREPLICATIONSLAVEON *.* TO 'repl'@'slave_ip' IDENTIFIEDBY 'password';
mysql> flushprivileges;
使用剛建立的 repl 賬戶在Slave所在主機上登入Master,測試用於複製的賬戶是否可以串連上
mysql -h master_ip -u repl -p
3 記錄同步點
mysql> FLUSHTABLESWITHREADLOCK; //若要同步的資料庫中已經有資料,還需要先用該語句鎖定資料庫
mysql> SHOWMASTERSTATUS; //查看Master狀態,記錄File和Position兩個資訊

將主庫資料做邏輯備份或物理備份

mysql> flushtableswithreadlock;
 
shell> mysqldump -uroot -p --all-databases --master-data > backup.sql
 
shell> scp -C backup.sqluser@slave_ip:/tmp/
 
mysql> unlocktables;
5  在從庫上恢複資料
shell> mysql -uroot -p </tmp/backup.sql
shell> rm -rf /tmp/backup.sql
6  
以root身份登入從庫,並在從庫上設定主庫的相關資訊(host、port、user等等)

mysql> CHANGEMASTERTO MASTER_HOST='master_ip', MASTER_USER='repl', MASTER_PASSWORD='password', MASTER_LOG_FILE='mysql-bin.000001', MASTER_LOG_POS=107;
 
mysql> STARTSLAVE; //啟動主從複製
 
mysql> SHOWSLAVESTATUS\G //查看slave狀態
7 一切順利的話,到這裡,Master上的操作會被同步到Slave上。
在主庫建立test_tb表,類比資料庫新增資料

mysql> create table test_tb(id int,name varchar(30)); 在從庫查看是否存在test_tb表
mysql> show tables;

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.