您好,登錄后才能下訂單哦!
在主主復(fù)制結(jié)構(gòu)中,兩臺(tái)服務(wù)器的任何一臺(tái)上面的數(shù)據(jù)庫存發(fā)生了改變都會(huì)同步到另一臺(tái)服務(wù)器上,這樣兩臺(tái)服務(wù)器互為主從,并且都能向外提供服務(wù)。配置的時(shí)候需要注意:主鍵重復(fù),server-id不能重復(fù)。
1.新建數(shù)據(jù)庫
Ubuntu16.04,開啟兩個(gè)虛擬機(jī)。
配置前,兩個(gè)mysql分別新建一個(gè)數(shù)據(jù)庫,保證的test數(shù)據(jù)庫的數(shù)據(jù)一致
create database test default character set utf8 default collate utf8_general_ci;
2.修改配置文件
vim /etc/mysql/mysql.conf.d/mysqld.cnf
服務(wù)器A(192.168.8.129)配置如下
bind-address = 0.0.0.0
log_bin = /var/log/mysql/mysql-bin.log #開啟二進(jìn)制日志
server-id = 1 #任意自然數(shù)n,只要保證兩臺(tái)MySQL主機(jī)不重復(fù)即可
expire-logs-days = 100
replicate-do-db = test #要同步的數(shù)據(jù)庫,默認(rèn)所有庫
binlog-ignore-db = mysql #忽略mysql庫
binlog-ignore-db = information_schema #忽略information_schema庫
auto-increment-increment = 2 #步進(jìn)值,有n臺(tái)主MySQL就填n
auto-increment-offset = 1 #起始值。第n臺(tái)主MySQL,此時(shí)為第1主MySQL
服務(wù)器B(192.168.8.131)配置
bind-address = 0.0.0.0
log_bin = /var/log/mysql/mysql-bin.log
server-id = 2
expire-logs-days = 100
replicate-do-db = test
binlog-ignore-db = mysql
binlog-ignore-db = information_schema
auto-increment-increment = 2
auto-increment-offset = 2 #起始值,第2臺(tái)主MySQL
二者只有server-id不同和 auto-increment- offset不同
auto-increment-offset是用來設(shè)定數(shù)據(jù)庫中自動(dòng)增長的起點(diǎn)的,兩個(gè)服務(wù)器都設(shè)定了一次自動(dòng)增長值2,所以它們的起點(diǎn)必須得不同,這樣才能避免兩臺(tái)服務(wù)器數(shù)據(jù)同步時(shí)出現(xiàn)主鍵沖突
replicate-do-db 指定同步的數(shù)據(jù)庫,我們只在兩臺(tái)服務(wù)器間同步test數(shù)據(jù)庫。auto-increment-increment的值應(yīng)設(shè)為整個(gè)結(jié)構(gòu)中服務(wù)器的總數(shù),本例用到兩臺(tái)服務(wù)器,所以值設(shè)為2
3.重啟mysql服務(wù)
/etc/init.d/mysql restart
4.創(chuàng)建共享用戶
創(chuàng)建一個(gè)可以在另一臺(tái)主機(jī)上登錄的MySQL用戶repl
看是否有mysql中是否有repl這個(gè)用戶
use mysql;
select user from user;
若沒有的話,新建用戶
create user 'repl'@'%' IDENTIFIED BY 'passwd';
grant replication slave on . to 'repl'@'%';
flush privileges;
查看repl用戶的權(quán)限
show grants for 'repl'@'%';
5.測試是否能夠遠(yuǎn)程登錄
在服務(wù)器A上(192.168.8.129)
mysql -h 192.168.8.131 -u repl –p
輸入口令jvkpxdYrlz
若成功,則繼續(xù)下一步
若失敗,檢查mysqld.cnf文件中的配置,可能因?yàn)閎ind-address=127.0.0.1導(dǎo)致,使得僅允許本機(jī)訪問。
test_user
(id
int NOT NULL AUTO_INCREMENT PRIMARY KEY,createtime
datetime NOT NULL DEFAULT CURRENT_TIMESTAMP);參考網(wǎng)址https://www.cnblogs.com/zping/p/5315827.html
https://www.cnblogs.com/phpstudy2015-6/p/6485819.html#_label7
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。