主頁 > 知識庫 > 詳解Mysql主從同步配置實(shí)戰(zhàn)

詳解Mysql主從同步配置實(shí)戰(zhàn)

熱門標(biāo)簽:遂寧400電話申請 邯鄲400電話注冊辦理 永州智能外呼系統(tǒng) dq8 全地圖標(biāo)注 地圖標(biāo)注直通車 電銷機(jī)器人市場價 趙縣地圖標(biāo)注 哈爾濱云外呼系統(tǒng)運(yùn)營商 南寧智能電銷機(jī)器人價格

1、Introduction

之前寫過一篇文章:Mysql主從同步的原理。

相信看過這篇文章的童鞋,都摩拳擦掌,躍躍一試了吧?

今天我們就來一次mysql主從同步實(shí)戰(zhàn)!

2、環(huán)境說明

os:ubuntu16.04

mysql:5.7.17

下面的實(shí)戰(zhàn)演練,都是基于上面的環(huán)境。當(dāng)然,其他環(huán)境也大同小異。

3、進(jìn)入實(shí)戰(zhàn)

工具

2臺機(jī)器:

master IP:192.168.33.22

slave  IP:192.168.33.33

master機(jī)器上的操作

1、更改配置文件

我們找到文件 /etc/mysql/mysql.conf.d/mysqld.cnf

配置如下:

bind-address = 192.168.33.22 #your master ip
server-id = 1 #在master-slave架構(gòu)中,每臺機(jī)器節(jié)點(diǎn)都需要有唯一的server-id
log_bin = /var/log/mysql/mysql-bin.log #開啟binlog

2、重啟mysql,以使配置文件生效。

sudo systemctl restart mysql

3、創(chuàng)建主從同步的mysql user。

$ mysql -u root -p
Password:

##創(chuàng)建slave1用戶,并指定該用戶只能在主機(jī)192.168.33.33上登錄。
mysql> CREATE USER 'slave1'@'192.168.33.33' IDENTIFIED BY 'slavepass';
Query OK, 0 rows affected (0.00 sec)

##為slave1賦予REPLICATION SLAVE權(quán)限。
mysql> GRANT REPLICATION SLAVE ON *.* TO 'slave1'@'192.168.33.33';
Query OK, 0 rows affected (0.00 sec)

4、為MYSQL加讀鎖

為了主庫與從庫的數(shù)據(jù)保持一致,我們先為mysql加入讀鎖,使其變?yōu)橹蛔x。

mysql> FLUSH TABLES WITH READ LOCK;
Query OK, 0 rows affected (0.00 sec)

5、記錄下來MASTER REPLICATION LOG 的位置

該信息稍后會用到。

mysql> SHOW MASTER STATUS;
+------------------+----------+--------------+------------------+-------------------+
| File    | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000001 |  613 |    |     |     |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

6、將master DB中現(xiàn)有的數(shù)據(jù)信息導(dǎo)出

$ mysqldump -u root -p --all-databases --master-data > dbdump.sql

7、接觸master DB的讀鎖

mysql> UNLOCK TABLES;

8、將步驟6中的dbdump.sql文件copy到slave

scp dbdump.sql ubuntu@192.168.33.33:/home/ubuntu

slave機(jī)器上的操作

1、更改配置文件

我們找到文件 /etc/mysql/mysql.conf.d/mysqld.cnf

更改配置如下:

bind-address = 192.168.33.33 #your slave ip
server-id = 2 #master-slave結(jié)構(gòu)中,唯一的server-id
log_bin = /var/log/mysql/mysql-bin.log #開啟binlog

2、重啟mysql,以使配置文件生效

sudo systemctl restart mysql

3、導(dǎo)入從master DB。 導(dǎo)出的dbdump.sql文件,以使master-slave數(shù)據(jù)一致

$ mysql -u root -p  /home/ubuntu/dbdump.sql

4、使slave與master建立連接,從而同步

$ mysql -u root -p
Password:

mysql> STOP SLAVE;
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> CHANGE MASTER TO
 -> MASTER_HOST='192.168.33.22',
 -> MASTER_USER='slave1',
 -> MASTER_PASSWORD='slavepass',
 -> MASTER_LOG_FILE='mysql-bin.000001',
 -> MASTER_LOG_POS=613;
Query OK, 0 rows affected, 2 warnings (0.01 sec)

mysql> START SLAVE;
Query OK, 0 rows affected (0.00 sec)

MASTER_LOG_FILE='mysql-bin.000001'與MASTER_LOG_POS=613的值,是從上面的 SHOW MASTER STATUS 得到的。

經(jīng)過如此設(shè)置之后,就可以進(jìn)行master-slave同步了~

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • MySQL 主從同步,事務(wù)回滾的實(shí)現(xiàn)原理
  • MySQL數(shù)據(jù)庫主從同步實(shí)戰(zhàn)過程詳解
  • MySQL主從同步中的server-id示例詳解
  • Centos7系統(tǒng)下Mysql主從同步配置方案
  • MySQL主從同步延遲的原因及解決辦法
  • MySQL主從同步機(jī)制與同步延時問題追查過程
  • MySQL數(shù)據(jù)庫的主從同步配置與讀寫分離
  • Mysql主從同步Last_IO_Errno:1236錯誤解決方法
  • Mysql主從同步的實(shí)現(xiàn)原理
  • 詳解windows下mysql的主從同步
  • 詳解MySQL數(shù)據(jù)庫設(shè)置主從同步的方法
  • Mysql數(shù)據(jù)庫的主從同步配置

標(biāo)簽:定西 南寧 阿里 鄂州 張家界 浙江 中衛(wèi) 上海

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《詳解Mysql主從同步配置實(shí)戰(zhàn)》,本文關(guān)鍵詞  詳解,Mysql,主從,同步,配置,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《詳解Mysql主從同步配置實(shí)戰(zhàn)》相關(guān)的同類信息!
  • 本頁收集關(guān)于詳解Mysql主從同步配置實(shí)戰(zhàn)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章