二: MySQL主從架構相關知識點
- 在MySQL的主從架構中,有關鍵的三個線程:
- dump thread :當主服務器上的有使數據庫發生改變的操作的語句時(基於語句,基於行的,混合三種語句)
- 會先將改操作語句記錄到二進制log中,該線程通知從服務器有數據庫操作語句發生,讓從服務器的I/O thread 複製
- I/O thread:監控主服器的二進制log ,及傳輸數據庫操作語句,將這些語句記錄到中繼日誌(relay log)中
- SQL thread:執行從服務器中的中繼日誌語句,到數據庫存儲中。
- 在MySQL 5.5版本中的主從架構中的主服務器中爲了處理高併發業務時可能是多線程寫入,
- 而在從服務器的SQL thread是單線程寫入數據庫存儲中的,這可能會造成從數據庫滯後的問題
三:MySQL的主從架構的過程
- 首先建立MySQL數據庫的Master(172.16.10.4)和Slave(172.16.10.5)之間爲主從關係
- Master的server-id:1
- Slave的server-id:15
- Master:
- 啓用二進制日誌
- 設置server-id
- 建立具有複製權限的用戶,且需要ssl認證
- Slave:
- 啓用中繼日誌
- 設置server-id
- 啓動Slave服務,並指定Master的相關參數
- 最後爲Mater和Slave先創建ssh連接需要的證書,密鑰
- 關於證書,密鑰的實現請參看---> http://haicang.blog.51cto.com/2590303/897660
- 主服務器配置
- 1:打開二進制日誌
- 2:修改server-id 爲1
- 3:創建具有複製權限的用戶mysql及爲其提供redhat的密碼
- mysql> GRANT REPLICATION SLAVE,REPLICATION CLIENT ON *.* TO mysql@'172.16.10.5' IDENTIFIED BY 'redhat' REQUIRE SSL;
-
從服務器配置