mysql5.7主主(雙主)復(fù)制-創(chuàng)新互聯(lián)

1. 準(zhǔn)備工作

創(chuàng)新互聯(lián)公司專注于天柱網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供天柱營(yíng)銷型網(wǎng)站建設(shè),天柱網(wǎng)站制作、天柱網(wǎng)頁(yè)設(shè)計(jì)、天柱網(wǎng)站官網(wǎng)定制、重慶小程序開(kāi)發(fā)服務(wù),打造天柱網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供天柱網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。

(本文永久地址:http://woymk.blog.51cto.com/10000269/1922786)

配置環(huán)境:centos6.9,mysql5.7

先安裝、配置好兩臺(tái)MySQL服務(wù)器

server1 IP:192.168.1.1

server2 IP:192.168.1.2

mysql的安裝請(qǐng)參考之前的文章:

LAMP環(huán)境搭建(centos6.9+apache2.4+mysql5.7+php7.1)

2. 在server1上操作

vi /etc/my.cnf
修改或添加下面這幾行:
server-id=1

log-bin=mysql-bin # 啟用二進(jìn)制日志
auto-increment-increment = 2 #每次增長(zhǎng)2
auto-increment-offset = 1 #設(shè)置自動(dòng)增長(zhǎng)的字段的偏移量
兩個(gè)可選參數(shù)(2選1):
binlog-do-db=db1,db2 #需要同步的庫(kù)
binlog-ignore-db=db1,db2 #忽略不同步的庫(kù)

保存后重啟

/etc/init.d/mysqld restart

運(yùn)行mysql客戶端
mysql -uroot -p

創(chuàng)建同步賬號(hào)

grant replication slave on *.* to 'repl2'@'192.168.1.2' identified by '1234';
flush privileges;

鎖表,不讓數(shù)據(jù)寫入

flush tables with read lock;
show master status;

mysql> show master status;
+------------------+----------+--------------+------------------+-------------------+
| File            | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000001 |     613 |             | mysql           |                  |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

記錄下二進(jìn)制日志文件名和位置

備份數(shù)據(jù)庫(kù)

在mysql1上執(zhí)行
mysqldump -uroot -p db1 > back.sql;

把備份好的數(shù)據(jù)拷貝到從服務(wù)器

scp back.sql 192.168.1.2:~

3. 在server2操作

vi /etc/my.cnf
修改或增加:
server-id=2 #這個(gè)數(shù)值不能和主一樣
log-bin=mysql-bin # 啟用二進(jìn)制日志
auto-increment-increment = 2 #每次增長(zhǎng)2
auto-increment-offset = 2 #設(shè)置自動(dòng)增長(zhǎng)的字段的偏移量

可選參數(shù)(2選1,這兩個(gè)參數(shù)設(shè)置成和主一樣):
replicate-do-db=db1,db2
replicate-ignore-db=db1,db2

保存后重啟

/etc/init.d/mysqld restart

把在server1上備份的數(shù)據(jù)導(dǎo)入server2

在server2上執(zhí)行
[root@server2 ~]# mysqldump -uroot -p db1 < back.sql

運(yùn)行mysql客戶端

mysql -uroot -p

創(chuàng)建同步賬號(hào)

grant replication slave on *.* to 'repl1'@'192.168.1.1' identified by '1234';
flush privileges;

show master status;

mysql> show master status;
+------------------+----------+--------------+------------------+-------------------+
| File            | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000001 |     613 |             | mysql           |                  |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

記錄下二進(jìn)制日志文件名和位置

執(zhí)行以下命令
stop slave;
change master to master_host='192.168.1.1',master_user='repl2',master_password='1234',master_log_file='mysql-bin.000001',master_log_pos=613;
(master_log_file和master_log_pos填上剛才記錄下的二進(jìn)制日志文件名和位置)

start slave;

查看從服務(wù)器的狀態(tài):

show slave status\G

mysql> show slave status\G
*************************** 1. row ***************************
              Slave_IO_State: Waiting for master to send event
                 Master_Host: 192.168.1.1
                 Master_User: repl2
                 Master_Port: 3306
               Connect_Retry: 60
             Master_Log_File: mysql-bin.000001
         Read_Master_Log_Pos: 613
              Relay_Log_File: server2-relay-bin.000002
               Relay_Log_Pos: 320
       Relay_Master_Log_File: mysql-bin.000001
            Slave_IO_Running: Yes
           Slave_SQL_Running: Yes

4. 回到server1上操作

運(yùn)行mysql客戶端
mysql -uroot -p

取消server1上數(shù)據(jù)庫(kù)的鎖定

mysql> unlock tables;

執(zhí)行以下命令
stop slave;
change master to master_host='192.168.1.2',master_user='repl1',master_password='1234',master_log_file='mysql-bin.000001',master_log_pos=613;
(master_log_file和master_log_pos填上剛才記錄下的二進(jìn)制日志文件名和位置)

start slave;

查看從服務(wù)器的狀態(tài):

show slave status\G

mysql> show slave status\G
*************************** 1. row ***************************
              Slave_IO_State: Waiting for master to send event
                 Master_Host: 192.168.1.2
                 Master_User: repl1
                 Master_Port: 3306
               Connect_Retry: 60
             Master_Log_File: mysql-bin.000001
         Read_Master_Log_Pos: 613
              Relay_Log_File: server1-relay-bin.000002
               Relay_Log_Pos: 320
       Relay_Master_Log_File: mysql-bin.000001
            Slave_IO_Running: Yes
           Slave_SQL_Running: Yes

5. 主主復(fù)制測(cè)試

經(jīng)測(cè)試,主主復(fù)制配置成功。

具體過(guò)程略,請(qǐng)自行請(qǐng)參考上一篇 mysql5.7主從配置 里的方法。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

分享題目:mysql5.7主主(雙主)復(fù)制-創(chuàng)新互聯(lián)
當(dāng)前網(wǎng)址:http://muchs.cn/article14/dchjge.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作、云服務(wù)器、商城網(wǎng)站、微信小程序App設(shè)計(jì)、網(wǎng)站設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)