mysql主輔庫同步

來源:互聯網
上載者:User

主庫:192.168.40.4 DB:testsyn table:users
輔庫:192.168.40.5

1.配置主庫my.cnf

  1. [mysqld]   
  2. log-bin=mysql-testsyn-bin --主庫二進位記錄檔名的首碼   
  3. binlog-do-db=testsyn      --要同步的資料庫   
  4. server-id = 1             --serverid和輔庫不同即可  
[mysqld]log-bin=mysql-testsyn-bin --主庫二進位記錄檔名的首碼binlog-do-db=testsyn      --要同步的資料庫server-id = 1             --serverid和輔庫不同即可

啟動mysql

建立使用者testsyn.擁有replication slave許可權

  1. grant replication slave on *.* to "testsyn"@"192.168.40.%" identified by 'testsyn' with grant option;  
grant replication slave on *.* to "testsyn"@"192.168.40.%" identified by 'testsyn' with grant option;

查看主庫狀態:

  1. show master status;  
show master status;

2.配置輔庫my.cnf

  1. server-id = 2  
  2. master-host = 192.168.40.4  
  3. master-user = testsyn    
  4. master-password = testsyn   
  5. master-port = 3306  
  6. master-connect-retry = 5  --稍候再試時間   
  7. replicate-do-db = testsyn    --同步db   
  8. #replicate-wild-do-table = user%.%   
  9. #replicate-do-db = itemcontent   
  10. #replicate-do-db = srcstore  
server-id = 2master-host = 192.168.40.4master-user = testsyn master-password = testsynmaster-port = 3306master-connect-retry = 5  --稍候再試時間replicate-do-db = testsyn    --同步db#replicate-wild-do-table = user%.%#replicate-do-db = itemcontent#replicate-do-db = srcstore

啟動mysql

查看輔庫狀態:

  1. show slave status;  
 show slave status;

說明:
Slave_IO_Running:串連到主庫,並讀取主庫的日誌到本地,產生本地記錄檔
Slave_SQL_Running:讀取本地記錄檔,並執行日誌裡的sql

3.把主庫上的資料dump到輔庫上

主庫:192.168.40.4:

  1. mysqldump --opt --master-data -uspider -pcrawler testsyn > /home/mahaibo/dump-testsyn &  
mysqldump --opt --master-data -uspider -pcrawler testsyn > /home/mahaibo/dump-testsyn &

注意參數:--master-data

輔庫:192.168.40.5
先建立庫:create database testsyn;

匯入:

  1. stop slave   
  2.   
  3. mysql -uspider -pcrawler testsyn < /home/mahaibo/dump-testsyn    
  4.   
  5.   
  6. start slave;  
stop slavemysql -uspider -pcrawler testsyn < /home/mahaibo/dump-testsyn start slave;

必須先停止stop slave,然後才能匯入

4.在主庫192.168.40.4上在users表裡插入一條資料:
insert into users (username,password) values ('test1','test1');

輔庫上的users表裡也相應的有了資料。

5.查看主庫二進位記錄檔內容:
show binlog events;

注意:
1.主輔庫同步主要是通過二進位日誌來實現同步的。
2.在啟動輔庫的時候必須先把資料同步,並刪除日誌目錄下的:master.info檔案。因為master.info記錄了上次要串連主庫的資訊,如果不刪除,即使my.cnf裡進行了修改,也不起作用。因為讀取的還是master.info檔案裡的資訊。

 

引用:http://www.javaeye.com/topic/171485

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.