假設現在有三颱主機,兩台主庫分別為master1,master2,一台從庫sl**e
1,在主庫上分別開啟二進位制日誌,並且配置不同server-id;
???? [mysqld]
???? log-bin=mysql-bin
???? server-id=1
2,分別在兩台主庫建立乙個專用於複製的使用者,並且賦予複製許可權;
???? create user 'repl'@'%' identified by 'password';
???? grant replication sl**e 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 sl**e;
????????也可以分別啟動:
??????? start sl**e for channel 'master1';
??????? start sl**e for channel 'master2';
??????? 同時停止:
??????? stop sl**e;
??????? 也可以分別停止:
??????? stop sl**e for channel 'master1';
??????? stop sl**e for channel 'master2';
注意:如果通過虛擬機器來操作的過程中,有拷貝虛擬機器的情況,比如通過拷貝master1來建立虛sl**e,
那麼很可能會出現從庫不能啟動問題,此時需要在從庫執行以下操作:
1,清空從庫以下**:
???? sl**e_master_info???? sl**e_relay_log_info???? sl**e_worker_info
???? innodb_index_stats???? innodb_table_stats
2,停止mysqld服務,刪除資料目錄下的auto.cnf檔案,重新啟動mysqld服務;
3,繼續配置從庫。
MySQL5 7多源複製實踐
mysql5.7開始新增多源複製功能,即允許乙個salve同時複製多個主庫的事務,sl e會建立通往每個主庫的管道。多源複製在應用來自多個源的事務的時候不會對有衝突的事務進行檢測。配置實現 主庫支援基於gtid和binlog position的配置 從庫儲存master資訊的倉庫需要為table 在...
mysql 5 7多例項安裝
一 安裝前準備工作 mysql 安裝包,上傳到伺服器 2.檢查是否已經安裝過 mysql rpm qa grep mysql 有的話就解除安裝掉以前安裝的mysql rpm e nodeps 是搜尋結果 3.安裝依賴包 yum install libaio libaio devel y 4.建立作業...
Mysql 5 7 常用配置
客戶端最大併發連線限制數 根據 threads connected 和 max used connections 來調整 預設值 151 mysql 暫存連線數,短時間得到大量連線時,能夠被暫時存到堆疊的連線數 不能超過系統設定 proc sys net ipv4 tcp max syn backl...