婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 基于Docker如何實現MySQL主從復制詳解

基于Docker如何實現MySQL主從復制詳解

熱門標簽:外呼系統打哪顯哪 江西外呼系統 湖北ai智能電銷機器人 高德地圖標注論壇 北海市地圖標注app 新邵電銷機器人企業 蘭州ai電銷機器人招商 AI電銷機器人 源碼 新科美甲店地圖標注

前言

MySQL的主從復制是實現應用的高性能,高可用的基礎。對于數據庫讀操作較密集的應用,通過使數據庫請求負載均衡分配到不同MySQL服務器,可有效減輕數據庫壓力。當遇到MySQL單點故障中,也能在短時間內實現故障切換。本文就MySQL的內建的復制功能進行闡述。

版本

  • MySQl: 5.7.17
  • CentOS: 7.4.1708
  • Docker: 1.13.1

概述

MySQL復制數據流程:

  1. 主庫在數據更新提交事務之前,將事件異步記錄到binlog二進制日志文件中,日志記錄完成后存儲引擎提交本次事務
  2. 從庫啟動一個I/O線程與主庫建立連接,用來請求主庫中要更新的binlog。這時主庫創建的binlog dump線程,這是二進制轉儲線程,如果有新更新的事件,就通知I/O線程;當該線程轉儲二進制日志完成,沒有新的日志時,該線程進入sleep狀態。
  3. 從庫的I/O線程接收到新的事件日志后,保存到自己的relay log(中繼日志)中
  4. 從庫的SQL線程讀取中繼日志中的事件,并執行更新保存。

配置主從庫

主庫my.cnf配置

在主庫的my.cnf中打開二進制日志,并設置服務Id。

log-bin = mysql-bin
server-id = 1

注意server-id必須是一個唯一的數字,必須主從不一致, 且主從庫必須設置項。

從庫my.cnf配置

log-bin = mysql-bin
server-id = 2
log-slave-updates = 1
read-only = 1

從庫也開啟log-bin,log-slave-updates設置為從庫重放中繼日志時,記錄到自己的二進制日志中,可以讓從庫作為其他服務器的主庫,將二進制日志轉發給其他從庫,在做一主多從方案時可考慮該種方案。

Dockerfile構建MySQL鏡像

構建所需文件

這里master和slave文件各自保存不共用,先創建文件夾 /usr/local/mysql 然后在目錄創建master和slave兩個目錄,再各自創建data文件夾

  • data 目錄用來保存數據文件的目錄
  • Dockerfile 保存Dockerfile內容
  • init.sql 初始化數據庫的SQL
  • my.cnf 數據庫配置文件,配置方式上面已提到
  • start.sh Dockerfile構建MySQL時的腳本

Dockerfile 內容

# 利用 mysql 鏡像創建新的鏡像
FROM mysql:5.7.17

ENV MYSQL_ROOT_PASSWORD ytao

COPY start.sh /mysql/start.sh
COPY my.cnf /etc/mysql/my.cnf 
COPY init.sql /mysql/init.sql

EXPOSE 3306
CMD ["sh", "/mysql/start.sh"]

這里的master和slave都是基于同一個鏡像構建,使用的存儲引擎和其他的組件最好是同一中,不然在復制過程中可能會出現異常。

init.sql 初始化數據

-- 創建 data_copy 數據庫
DROP DATABASE IF EXISTS `data_copy`;
CREATE DATABASE `data_copy` /*!40100 DEFAULT CHARACTER SET utf8mb4 collate utf8mb4_general_ci */;

-- 創建 person 表
USE `data_copy`;
DROP TABLE IF EXISTS `person`;
CREATE TABLE `person` (
 `id` int(32) NOT NULL,
 `name` varchar(255) DEFAULT NULL,
 PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

創建data_copy數據庫和person表。

start.sh 腳本

#!/bin/sh
echo '啟動mysql'
service mysql start
sleep 5

echo '初始化數據庫'
mysql -uroot -pytao < /mysql/init.sql
echo '初始化完成!'
tail -f /dev/null

構建master和slave鏡像并運行容器

構建master鏡像

docker build -t master/mysql .

構建slave鏡像

docker build -t slave/mysql .

構建成功會返回 Successfuly,或通過docker images命令查看鏡像

使用剛構建的鏡像來運行容器

# master 容器
docker run --name master -p 3306:3306 -v /usr/local/mysql/master/data/:/var/lib/mysql -d master/mysql

# slave 容器
docker run --name slave -p 3307:3306 -v /usr/local/mysql/slave/data/:/var/lib/mysql -d slave/mysql

指定master端口為3306,slave端口為3307,掛載data目錄為保存數據的目錄。

連接到數據庫后驗證數據庫是否初始化成功

查看 log-bin 是否開啟

創建復制賬號

前面有提到從庫I/O線程要與主庫建立連接,所以需要用到賬號進行驗證。賬號除了要有連接權限(REPLICATION CLIENT),同時還要有復制權限(REPLICATION SLAVE)。

GRANT REPLICATION CLIENT, REPLICATION SLAVE ON *.* TO muser@'%' IDENTIFIED BY 'ytao'; 

這里設置的訪問地址是開放的,實際使用過程中安全起見一定要指定訪問地址。

從庫啟動復制

從庫連接到主庫,獲取到二進制日志后重放。這里首先要配置上面創建的賬號進行連接,使用命令進行相應的設置。

CHANGE MASTER TO 
MASTER_HOST = '47.107.xx.xxx',
MASTER_PORT = 3306,
MASTER_USER = 'muser',
MASTER_PASSWORD = 'ytao',
MASTER_LOG_FILE = 'mysql-bin.000006';

到這里復制還沒有啟動,需要再從庫中啟動

START SLAVE;

使用SHOW SLAVE STATUS\G;命令查看啟動后的情況

上面標記的輸出信息Slave_IO_Running: Yes和Slave_SQL_Running: Yes可以看到I/O線程和SQL線程已啟動運行中。

測試同步數據

如果在主庫中添加,更新或刪除一個數據,那么從庫中應該也有與主庫對應的數據變化。

向主庫添加一條數據

INSERT INTO `data_copy`.`person` (`id`, `name`) VALUES ('1', 'ytao');

查詢從庫數據,數據已被同步過來。

總結

上述是最簡單最基本的配置,但是理解上面的配置過程,就可以根據自身情況定制不同方案,實現一主多從,主主復制(主動-主動或主動-被動模式)等等來滿足自身需求。

MySQL的復制雖然使用簡單方便,但也伴隨著一些問題需要我們在使用中進行解決,比如:不能從服務器異常停止中恢復,數據同步的延遲等等,還好現在遇到的大部分問題在行業中已得到相應的解決。對這方面感興趣的可以去了解下現在解決這些問題的中間件實現方案。

好了,以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。

標簽:自貢 池州 海南 黃石 阿克蘇 南陽 大理 黔東

巨人網絡通訊聲明:本文標題《基于Docker如何實現MySQL主從復制詳解》,本文關鍵詞  基于,Docker,如何,實現,MySQL,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《基于Docker如何實現MySQL主從復制詳解》相關的同類信息!
  • 本頁收集關于基于Docker如何實現MySQL主從復制詳解的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    欧美妇女性影城| 一区二区三区免费网站| 亚洲精品中文在线| 国产一区二区三区不卡在线观看| 欧洲视频一区二区| 国产日本一区二区| 另类成人小视频在线| 欧洲av一区二区嗯嗯嗯啊| 亚洲国产高清不卡| 国产一区二区福利视频| 91精品国产黑色紧身裤美女| 亚洲猫色日本管| 国产精品99久久久久久久vr| 日韩一级高清毛片| 日韩中文字幕麻豆| 欧美视频在线观看一区| 亚洲欧美偷拍另类a∨色屁股| 国产不卡视频一区| 26uuuu精品一区二区| 麻豆成人av在线| 91精品国产色综合久久| 无码av免费一区二区三区试看| 91日韩精品一区| 国产精品成人免费精品自在线观看| 国产在线精品一区二区不卡了| 欧美成人一区二区三区| 狂野欧美性猛交blacked| 91精品中文字幕一区二区三区| 婷婷六月综合亚洲| 3d动漫精品啪啪1区2区免费| 日本不卡123| 精品日韩一区二区| 国产精品888| 国产清纯白嫩初高生在线观看91| 国产乱一区二区| 国产精品人妖ts系列视频| 成人免费观看视频| 亚洲欧美日韩一区| 欧美日韩亚洲综合在线| 日本午夜一区二区| 久久久天堂av| 91麻豆免费观看| 亚洲一二三区在线观看| 欧美一区二区视频观看视频| 日本不卡1234视频| 国产网站一区二区| 在线观看免费一区| 美腿丝袜亚洲三区| 中文字幕成人av| 欧美午夜精品理论片a级按摩| 日韩高清欧美激情| 精品粉嫩aⅴ一区二区三区四区| 激情综合网天天干| 综合精品久久久| 91精品国产入口在线| 国产精品一品视频| 亚洲电影一级黄| 久久久蜜桃精品| 欧美在线999| 国产一区二区三区综合| 玉米视频成人免费看| 日韩欧美一二区| www.欧美色图| 日韩国产在线一| 国产精品毛片大码女人| 欧美日韩亚洲综合在线 欧美亚洲特黄一级 | 国产精品国产三级国产aⅴ原创 | 亚洲宅男天堂在线观看无病毒 | 在线播放国产精品二区一二区四区| 日本美女一区二区三区视频| 欧美国产一区在线| 欧美日韩在线播放三区四区| 狠狠色狠狠色合久久伊人| 亚洲精品视频在线观看免费| 精品国产第一区二区三区观看体验| 日本乱人伦一区| 国产精品一区二区三区乱码| 婷婷开心激情综合| 自拍偷在线精品自拍偷无码专区| 欧美videos中文字幕| 在线免费精品视频| 处破女av一区二区| 国内欧美视频一区二区| 亚洲h动漫在线| 亚洲人成伊人成综合网小说| 久久亚洲综合av| 6080亚洲精品一区二区| 日本道在线观看一区二区| 国产馆精品极品| 美女视频黄免费的久久| 亚洲成人一区二区在线观看| 亚洲欧美色一区| 国产精品久久久久久亚洲毛片| 26uuu国产在线精品一区二区| 欧美一区二区三区男人的天堂| 一本色道综合亚洲| bt欧美亚洲午夜电影天堂| 国产精品乡下勾搭老头1| 精品一区二区日韩| 日韩成人一区二区三区在线观看| 亚洲一区免费在线观看| 亚洲一二三四久久| 亚洲综合在线电影| 亚洲在线中文字幕| 亚洲综合久久久| 一区二区三区在线免费视频| 中文字幕亚洲区| 亚洲天堂成人在线观看| 亚洲人成网站影音先锋播放| ●精品国产综合乱码久久久久 | 色婷婷综合久久久中文一区二区| 99久久精品国产一区二区三区| 波多野结衣精品在线| 成人动漫一区二区在线| 9人人澡人人爽人人精品| k8久久久一区二区三区| 91一区二区在线| 91久久精品网| 欧美色窝79yyyycom| 91精品国产一区二区三区蜜臀 | 精品亚洲porn| 国产成人综合亚洲91猫咪| 成人av午夜电影| 色综合色狠狠综合色| 欧美在线|欧美| 日韩午夜中文字幕| 欧美激情一区二区三区全黄| 成人免费在线视频观看| 亚洲综合网站在线观看| 人人精品人人爱| 国产成人欧美日韩在线电影| 色94色欧美sute亚洲线路二 | 成人ar影院免费观看视频| 91网站最新网址| 欧美精品v国产精品v日韩精品| 欧美成va人片在线观看| 国产欧美一区二区精品久导航| 日韩码欧中文字| 舔着乳尖日韩一区| 国产精选一区二区三区| 91福利国产成人精品照片| 日韩免费高清视频| 亚洲欧洲一区二区在线播放| 日韩电影在线观看网站| 高清不卡在线观看| 欧美日免费三级在线| 久久精品亚洲乱码伦伦中文| 亚洲黄色在线视频| 激情国产一区二区 | 色女孩综合影院| 精品欧美一区二区三区精品久久| 亚洲少妇30p| 极品少妇xxxx精品少妇| 在线精品国精品国产尤物884a| 日韩精品一区二区三区视频在线观看 | 欧美影片第一页| 中文一区在线播放| 日韩电影一区二区三区| 99久久精品一区| 久久久www成人免费毛片麻豆| 亚洲chinese男男1069| www..com久久爱| 久久夜色精品国产噜噜av| 日韩在线a电影| 91免费看片在线观看| 亚洲国产精品ⅴa在线观看| 久草中文综合在线| 欧美日韩精品欧美日韩精品一 | 国产欧美日韩另类一区| 麻豆精品视频在线观看| 欧美午夜宅男影院| 亚洲欧美影音先锋| 国产高清视频一区| 精品盗摄一区二区三区| 天堂成人国产精品一区| 欧美最新大片在线看| 综合亚洲深深色噜噜狠狠网站| 国产精品一区专区| 精品国产精品一区二区夜夜嗨| 偷拍一区二区三区四区| 欧美日韩情趣电影| 亚洲妇女屁股眼交7| 日本韩国一区二区三区视频| 国产精品日日摸夜夜摸av| 国产裸体歌舞团一区二区| 亚洲精品一线二线三线无人区| 日本人妖一区二区| 91精品国产美女浴室洗澡无遮挡| 亚洲va国产天堂va久久en| 欧美日韩高清不卡| 亚洲va欧美va人人爽| 欧美精品久久久久久久多人混战| 亚洲成人动漫一区| 91精品福利在线一区二区三区 | 久久久久久97三级| 激情图区综合网| 久久久www成人免费毛片麻豆 | 精品免费国产二区三区 | 国产精品初高中害羞小美女文| av爱爱亚洲一区|