溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

MySQL多源復(fù)制配置實施步驟

發(fā)布時間:2020-06-01 15:51:05 來源:網(wǎng)絡(luò) 閱讀:457 作者:三月 欄目:數(shù)據(jù)庫

本文主要給大家介紹MySQL多源復(fù)制配置實施步驟,文章內(nèi)容都是筆者用心摘選和編輯的,具有一定的針對性,對大家的參考意義還是比較大的,下面跟筆者一起了解下MySQL多源復(fù)制配置實施步驟吧。

多源復(fù)制的意義

   1.可以在一個從庫上對多個云服務(wù)器的數(shù)據(jù)庫進(jìn)行匯總,或者對一個數(shù)據(jù)庫的分庫分表進(jìn)行匯總。

   2.集約使用從庫云服務(wù)器的硬件資源,畢竟弱一個數(shù)據(jù)庫業(yè)務(wù)量較小確占用整個云服務(wù)器資源是不經(jīng)濟(jì)的。

   3.更方便的對個業(yè)務(wù)庫進(jìn)行數(shù)據(jù)備份,優(yōu)化數(shù)據(jù)庫備份腳本編寫邏輯

拓補(bǔ)圖

MySQL多源復(fù)制配置實施步驟


實施步驟

   1.備份主庫上的數(shù)據(jù),考慮到gtid的問題建議只采用mysqldump程序進(jìn)行備份

centos:#mysqldump --login-path=3306 \ #mysql官方工具都支持login-path快速登錄
         --single-transaction \ #事務(wù)一致性備份,防止備份完整性被事務(wù)一致性破壞
         --master-data=2 \ #在備份文件的頭部加一句change master to pos的注釋語句
          -A >ip06p3306.sql #備份所有數(shù)據(jù)庫


  2.將導(dǎo)出的文件傳輸?shù)綇膸斓脑品?wù)器上

   centos_ip06:#scp ip06p3306.sql root@192.168.1.11:/root/
   centos_ip31:#scp ip31p3306.sql root@192.168.1.11:/root/

   3.將主庫的備份文件導(dǎo)入到從庫上

   centos:#mysql --login-path=3306 \
             -f <ip06p3306.sql #-f參數(shù),忽略應(yīng)用備份時產(chǎn)生的GTID沖突

  4.從兩份備份文件的頭部查看兩個主庫備份時執(zhí)行到的GTID 

    MySQL多源復(fù)制配置實施步驟

   centos:#less ip06p3306.sql|grep PURGED #得到GTID_ip06
   centos:#less ip31p3306.sql|grep PURGED #得到GTID_ip31

   5.重新設(shè)置從庫的GTID(在從庫上執(zhí)行)

   mysql>reset master;
   mysql>set global gtid_purged='GTID_ip06,GTID_ip31';

   6.將從庫的指向各自的主庫

   

      mysql>change master to \           
      master_host='192.168.1.6',master_port=3306,\
      master_user='repl',master_password='123456', \    
      master_auto_postion=1 \自動對齊GTID,從庫宕機(jī)重啟后,刪除未執(zhí)行relaylog,重新拉取        for channel 'master_3306';為這個主設(shè)定一個頻道名,可設(shè)為易于辨認(rèn)的名字

 7.設(shè)置不方便同步的庫:(如會導(dǎo)致復(fù)制出重復(fù)用戶的mysql庫) 

   但sys,performance,information為模式或者視圖一樣的存在,數(shù)據(jù)在讀取時即時生成,不真正存儲數(shù)據(jù),可以不過濾

  

 mysql>stop slave sql_thread;#停止從庫的重放進(jìn)程,比停止整個從庫要方便的多
    mysql>change replication filter \
    replicate_ignore_db=(mysql,db1);\#把復(fù)制的庫放在括號里,并用,分隔
    mysql>start slave sql_thread;

 8.查看信息:  

   

mysql> show slave status\G
    *************************** 1. row ***************************
    Slave_IO_State: Waiting for master to send event
    Master_Host: 192.168.1.6
    Master_User: repl
    Master_Port: 3306
    Connect_Retry: 60
    Master_Log_File: mysql-bin.000016
    Read_Master_Log_Pos: 194
    Relay_Log_File: localhost-relay-bin-master_3306.000033
    Relay_Log_Pos: 367
    Relay_Master_Log_File: mysql-bin.000016
    Slave_IO_Running: Yes
    Slave_SQL_Running: Yes
    Replicate_Do_DB: 
    Replicate_Ignore_DB: 
    Replicate_Do_Table: 
    Replicate_Ignore_Table: 
    Replicate_Wild_Do_Table: 
    Replicate_Wild_Ignore_Table: 
    Last_Errno: 0
    Last_Error: 
    Skip_Counter: 0
    Exec_Master_Log_Pos: 194
    Relay_Log_Space: 803
    Until_Condition: None
    Until_Log_File: 
    Until_Log_Pos: 0
    Master_SSL_Allowed: No
    Master_SSL_CA_File: 
    Master_SSL_CA_Path: 
    Master_SSL_Cert: 
    Master_SSL_Cipher: 
    Master_SSL_Key: 
    Seconds_Behind_Master: 0
    Master_SSL_Verify_Server_Cert: No
    Last_IO_Errno: 0
    Last_IO_Error: 
    Last_SQL_Errno: 0
    Last_SQL_Error: 
    Replicate_Ignore_Server_Ids: 
    Master_Server_Id: 13306
    Master_UUID: 449fdd93-1b80-11e7-b054-000c29aa1d65
    Master_Info_File: mysql.slave_master_info
    SQL_Delay: 0
    SQL_Remaining_Delay: NULL
    Slave_SQL_Running_State: Slave has read all relay log; waiting for more updates
    Master_Retry_Count: 86400
    Master_Bind: 
    Last_IO_Error_Timestamp: 
    Last_SQL_Error_Timestamp: 
    Master_SSL_Crl: 
    Master_SSL_Crlpath: 
    Retrieved_Gtid_Set: 
    Executed_Gtid_Set: 066c3194-2b4b-11e7-b67b-000c290b6ef0:1-2951823,
                         449fdd93-1b80-11e7-b054-000c29aa1d65:1-140,
                         efa1d12e-3c56-11e7-a99e-000c29ba498d:1-481
    Auto_Position: 1
    Replicate_Rewrite_DB: 
    Channel_Name: master_3306
    Master_TLS_Version: 
      *************************** 2. row ***************************
    Slave_IO_State: Waiting for master to send event
    Master_Host: 192.168.1.31
    Master_User: repl
    Master_Port: 3306
    Connect_Retry: 60
    Master_Log_File: mysql-bin.000026
    Read_Master_Log_Pos: 375018221
    Relay_Log_File: localhost-relay-bin-master_zabbix.000032
    Relay_Log_Pos: 375018394
    Relay_Master_Log_File: mysql-bin.000026
    Slave_IO_Running: Yes
    Slave_SQL_Running: Yes
    Replicate_Do_DB: 
    Replicate_Ignore_DB: 
    Replicate_Do_Table: 
    Replicate_Ignore_Table: 
    Replicate_Wild_Do_Table: 
    Replicate_Wild_Ignore_Table: 
    Last_Errno: 0
    Last_Error: 
    Skip_Counter: 0
    Exec_Master_Log_Pos: 375018221
    Relay_Log_Space: 375018619
    Until_Condition: None
    Until_Log_File: 
    Until_Log_Pos: 0
    Master_SSL_Allowed: No
    Master_SSL_CA_File: 
    Master_SSL_CA_Path: 
    Master_SSL_Cert: 
    Master_SSL_Cipher: 
    Master_SSL_Key: 
    Seconds_Behind_Master: 0
    Master_SSL_Verify_Server_Cert: No
    Last_IO_Errno: 0
    Last_IO_Error: 
    Last_SQL_Errno: 0
    Last_SQL_Error: 
    Replicate_Ignore_Server_Ids: 
    Master_Server_Id: 313306
    Master_UUID: 066c3194-2b4b-11e7-b67b-000c290b6ef0
    Master_Info_File: mysql.slave_master_info
    SQL_Delay: 0
    SQL_Remaining_Delay: NULL
    Slave_SQL_Running_State: Slave has read all relay log; waiting for more updates
    Master_Retry_Count: 86400
    Master_Bind: 
    Last_IO_Error_Timestamp: 
    Last_SQL_Error_Timestamp: 
    Master_SSL_Crl: 
    Master_SSL_Crlpath: 
    Retrieved_Gtid_Set: 066c3194-2b4b-11e7-b67b-000c290b6ef0:2310554-2951823
    Executed_Gtid_Set: 066c3194-2b4b-11e7-b67b-000c290b6ef0:1-2951823,
              449fdd93-1b80-11e7-b054-000c29aa1d65:1-140,
              efa1d12e-3c56-11e7-a99e-000c29ba498d:1-481
    Auto_Position: 1
    Replicate_Rewrite_DB: 
    Channel_Name: master_zabbix
    Master_TLS_Version: 
          2 rows in set (0.01 sec)

看完以上關(guān)于MySQL多源復(fù)制配置實施步驟,很多讀者朋友肯定多少有一定的了解,如需獲取更多的行業(yè)知識信息 ,可以持續(xù)關(guān)注我們的行業(yè)資訊欄目的。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI