下文內容主要給大家帶來mysql5.7配置的多源復制講義,所講到的知識,與書籍略有不同,都是億速云專業技術人員在與用戶接觸過程中,總結出來的,具有一定的經驗分享價值,希望給廣大讀者帶來幫助。
假設現在有三臺主機,兩臺主庫分別為master1,master2,一臺從庫slave
1,在主庫上分別開啟二進制日志,并且配置不同server-id;
[mysqld]
log-bin=mysql-bin
server-id=1
2,分別在兩臺主庫創建一個專用于復制的用戶,并且賦予復制權限;
CREATE USER 'repl'@'%' IDENTIFIED BY 'password';
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'%';
3,分別在兩個主庫執行狀態查詢,并且記錄查詢狀態;
SHOW MASTER STATUS;
分別記錄file,position,假設master1查詢結果為file1,pos1,master2查存結果為file2,pos2
4,配置從庫
1),設置如下兩個變量值為table;
set global master_info_repository='TABLE';
set global relay_log_info_repository='TABLE';
2),分別執行如下設置語句:
CHANGE MASTER TO
MASTER_HOST='master1,
MASTER_USER='repl',
MASTER_PASSWORD='password',
MASTER_LOG_FILE='file1',
MASTER_LOG_POS=rpos1 for channel 'master1';
CHANGE MASTER TO
MASTER_HOST='master2,
MASTER_USER='repl',
MASTER_PASSWORD='password',
MASTER_LOG_FILE='file2',
MASTER_LOG_POS=rpos2 for channel 'master2';

3),啟動從庫復制
同時啟動:
start slave;
也可以分別啟動:
start slave for channel 'master1';
start slave for channel 'master2';
同時停止:
stop slave;
也可以分別停止:
stop slave for channel 'master1';
stop slave for channel 'master2';
注意:如果通過虛擬機來操作的過程中,有拷貝虛擬機的情況,比如通過拷貝master1來創建虛slave,
那么很可能會出現從庫不能啟動問題,此時需要在從庫執行以下操作:
1,清空從庫以下表格:
slave_master_info
slave_relay_log_info
slave_worker_info
innodb_index_stats
innodb_table_stats
2,停止mysqld服務,刪除數據目錄下的auto.cnf文件,重新啟動mysqld服務;
3,繼續配置從庫。
對于以上關于mysql5.7配置的多源復制講義,如果大家還有更多需要了解的可以持續關注我們億速云的行業推新,如需獲取專業解答,可在官網聯系售前售后的,希望該文章可給大家帶來一定的知識更新。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。