MySQL中的主從複製

MySQL中的主從複製

條件

  • 主庫開啓binlog日誌(設置log-bin參數)
  • 主從server-id不同(這個要小心)
  • 從庫服務器能連通主庫

原理

  • 從庫生成兩個線程,一個I/O線程,一個SQL線程
  • I/O線程去請求主庫的binlog,並將得到的binlog日誌寫到relay log(中繼日誌)文件中;
  • 主庫會生成一個 log dump 線程,用來給從庫 I/O線程傳binlog;
  • SQL 線程,會讀取relay log文件中的日誌,並解析成具體操作,來實現主從的操作一致,而最終數據一致

步驟

  • 修改主從服務配置文件,server-id不同;

  • 配置完成後,保存並重啓主MySQL數據庫;

  • 在主服務器上建立帳戶並授權slave服務器,GRANT replication slave ON *.* TO 'slave'@'%' IDENTIFIED BY '123456';

  • 登錄主服務器的mysql,查詢master的狀態, show master status;

  • 配置從服務器Slave

    change master to master_host='192.168.33.110',
    				 master_user='slave',
    				 master_password='123456',
    				 master_log_file='mysql-bin.000001',
    				 master_log_pos=315;
    start slave;  # 啓動從服務器複製功能
    
  • 檢查從服務器複製功能狀態

    show slave status \G
    
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章