精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

使用Docker自動(dòng)化部署MySQL集群

數(shù)據(jù)庫(kù) MySQL
本文主要是簡(jiǎn)化mysql主從搭建,同時(shí)給需要學(xué)習(xí)mysql主從的同學(xué)一個(gè)現(xiàn)成的環(huán)境。

本文主要是簡(jiǎn)化mysql主從搭建,同時(shí)給需要學(xué)習(xí)mysql主從的同學(xué)一個(gè)現(xiàn)成的環(huán)境。

1. 編寫master.sh腳本

此腳本主要是根據(jù)環(huán)境變量,創(chuàng)建出用于主從同步的用戶。關(guān)于為什么要?jiǎng)?chuàng)建出master,slave腳本,是為了區(qū)分master和slave環(huán)境,因?yàn)橹灰裺ql和sh文件放到master目錄下面,master在第一次初始化的時(shí)候,會(huì)自動(dòng)執(zhí)行里面的文件內(nèi)容

mkdir -p init init/master init/slave
cat > init/master/master.sh <<EOF
#!/bin/bash
#定義用于同步的用戶名
MASTER_SYNC_USER=\${MASTER_SYNC_USER:-sync_admin}
#定義用于同步的用戶密碼
MASTER_SYNC_PASSWORD=\${MASTER_SYNC_PASSWORD:-123456}
#定義用于登錄mysql的用戶名
ADMIN_USER=\${ADMIN_USER:-root}
#定義用于登錄mysql的用戶密碼
ADMIN_PASSWORD=\${ADMIN_PASSWORD:-123456}
#定義運(yùn)行登錄的host地址
ALLOW_HOST=\${ALLOW_HOST:-%}
#定義創(chuàng)建賬號(hào)的sql語(yǔ)句
CREATE_USER_SQL="CREATE USER '\$MASTER_SYNC_USER'@'\$ALLOW_HOST' IDENTIFIED BY '\$MASTER_SYNC_PASSWORD';"
#定義賦予同步賬號(hào)權(quán)限的sql,這里設(shè)置兩個(gè)權(quán)限,REPLICATION SLAVE,屬于從節(jié)點(diǎn)副本的權(quán)限,REPLICATION CLIENT是副本客戶端的權(quán)限,可以執(zhí)行show master status語(yǔ)句
GRANT_PRIVILEGES_SQL="GRANT SELECT,REPLICATION SLAVE,REPLICATION CLIENT ON *.* TO '\$MASTER_SYNC_USER'@'\$ALLOW_HOST';"
#定義刷新權(quán)限的sql
FLUSH_PRIVILEGES_SQL="FLUSH PRIVILEGES;"
#執(zhí)行sql
mysql -u"\$ADMIN_USER" -p"\$ADMIN_PASSWORD" -e "\$CREATE_USER_SQL \$GRANT_PRIVILEGES_SQL \$FLUSH_PRIVILEGES_SQL"
EOF

2. 編寫slave.sh腳本

slave主要是去master查詢最新的pos位置和binlog文件名稱,然后創(chuàng)建同步需要的相關(guān)信息,然后執(zhí)行start slave;

cat >init/slave/slave.sh<<EOF
#定義連接master進(jìn)行同步的賬號(hào)
SLAVE_SYNC_USER="\${SLAVE_SYNC_USER:-sync_admin}"
#定義連接master進(jìn)行同步的賬號(hào)密碼
SLAVE_SYNC_PASSWORD="\${SLAVE_SYNC_PASSWORD:-123456}"
#定義slave數(shù)據(jù)庫(kù)賬號(hào)
ADMIN_USER="\${ADMIN_USER:-root}"
#定義slave數(shù)據(jù)庫(kù)密碼
ADMIN_PASSWORD="\${ADMIN_PASSWORD:-123456}"
#定義連接master數(shù)據(jù)庫(kù)host地址
MASTER_HOST="\${MASTER_HOST:-%}"
#連接master數(shù)據(jù)庫(kù),查詢二進(jìn)制數(shù)據(jù),并解析出logfile和pos,這里同步用戶要開(kāi)啟 REPLICATION CLIENT權(quán)限,才能使用SHOW MASTER STATUS;
RESULT=\`mysql -u"\$SLAVE_SYNC_USER" -h\$MASTER_HOST -p"\$SLAVE_SYNC_PASSWORD" -e "SHOW MASTER STATUS;" | grep -v grep |tail -n +2| awk '{print \$1,\$2}'\`
#解析出logfile
LOG_FILE_NAME=\`echo \$RESULT | grep -v grep | awk '{print \$1}'\`
#解析出pos
LOG_FILE_POS=\`echo \$RESULT | grep -v grep | awk '{print \$2}'\`
#設(shè)置連接master的同步相關(guān)信息
SYNC_SQL="change master to master_host='\$MASTER_HOST',master_user='\$SLAVE_SYNC_USER',master_password='\$SLAVE_SYNC_PASSWORD',master_log_file='\$LOG_FILE_NAME',master_log_pos=\$LOG_FILE_POS,get_master_public_key=1;"
#開(kāi)啟同步
START_SYNC_SQL="start slave;"
#查看同步狀態(tài)
STATUS_SQL="show slave status\G;"
mysql -u"\$ADMIN_USER" -p"\$ADMIN_PASSWORD" -e "\$SYNC_SQL \$START_SYNC_SQL \$STATUS_SQL"
EOF

3. 編寫docker-compose.yml腳本

version: '3'
services:
  master:
    image: mysql:8
    container_name: mysql-master
    ports:
    - '3306:3306'
    restart: always
    hostname: mysql-master
    environment:
      MYSQL_ROOT_PASSWORD: "123456"
      MASTER_SYNC_USER: "sync"
      MASTER_SYNC_PASSWORD: "123456"
      ADMIN_USER: "root"
      ADMIN_PASSWORD: "123456"
      TZ: "Asia/Shanghai"
    deploy:
      resources:
        limits:
          memory: 512M
          cpus: 50m
    healthcheck:
      test: ["CMD","mysqladmin","-uroot","-p$${MYSQL_ROOT_PASSWORD}","ping","-h","localhost"]
      timeout: 2s
      interval: 10s
      retries: 5
      start_period: 5s
    logging:
      options:
        max-file: '1'
        max-size: '128k'
    command:
    -  "--server-id=1"
    -  "--character-set-server=utf8mb4"
    -  "--collation-server=utf8mb4_unicode_ci"
    -  "--log-bin=mysql-bin"
    -  "--sync_binlog=1"
    -  "--binlog-ignore-db=mysql"
    -  "--binlog-ignore-db=sys"
    -  "--binlog-ignore-db=performance_schema"
    -  "--binlog-ignore-db=information_schema"
    -  "--sql_mode=NO_AUTO_VALUE_ON_ZERO,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION,PIPES_AS_CONCAT,ANSI_QUOTES"
    volumes:
    - ./init/master:/docker-entrypoint-initdb.d
    - ./data/master:/var/lib/mysql
  slave:
    image: mysql:8
    container_name: mysql-slave
    ports:
    - '3307:3306'
    restart: always
    hostname: mysql-slave
    environment:
      MYSQL_ROOT_PASSWORD: "123456"
      SLAVE_SYNC_USER: "sync"
      SLAVE_SYNC_PASSWORD: "123456"
      ADMIN_USER: "root"
      ADMIN_PASSWORD: "123456"
      MASTER_HOST: "mysql-master"
      TZ: "Asia/Shanghai"
    healthcheck: 
      test: ["CMD","mysqladmin","-uroot","-p$${MYSQL_ROOT_PASSWORD}","ping","-h","localhost"]
      timeout: 2s
      interval: 10s
      retries: 5
      start_period: 5s
    deploy:
      resources:
        limits:
          memory: 512M
          cpus: 50m
    logging:
      options:
        max-file: '1'
        max-size: '128k'
    depends_on:
      master:
        condition: service_healthy
    command:
    -  "--server-id=2"
    -  "--character-set-server=utf8mb4"
    -  "--collation-server=utf8mb4_unicode_ci"
    -  "--sql_mode=NO_AUTO_VALUE_ON_ZERO,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION,PIPES_AS_CONCAT,ANSI_QUOTES"
    volumes:
    - ./init/slave:/docker-entrypoint-initdb.d
    - ./data/slave:/var/lib/mysql

啟動(dòng)腳本

docker-compose up -d

后期維護(hù)過(guò)程中可能用到的腳本

STOP SLAVE;
RESET SLAVE;
CHANGE MASTER TO master_log_pos=0;
START SLAVE;
SHOW SLAVE STATUS;

寫在后面,基于docker-compose搭建mysql主從已經(jīng)結(jié)束,這里主要演示了如何一鍵搭建mysql主從,同時(shí)測(cè)試在各種環(huán)境下,還能保證主從同步。但是單主從同步肯定也無(wú)法滿足企業(yè)的需求,有興趣的同學(xué)可以研究一些主主雙寫同步,然后通過(guò)nginx搭建主備模式,達(dá)到高可用。

這里提供一個(gè)判斷的方法,編寫#boot.sh腳本文件,這時(shí)候需要重寫dockerfile文件,使用myslq debian的鏡像文件。并通過(guò)apt添加netcat工具。具體不再詳述了,以下為判斷腳本。

#!/bin/bash
wait_for() {
    echo Waiting for $1 to listen on $2...
    sleep 1
    while ! nc -vz $1 $2
    do
       echo waiting...;
       sleep 1s;
    done
}
if [ -e "/slave" ]; then
   echo "slave..."
   cp /slave.cnf /etc/mysql/conf.d/
else
   echo "master..."
   cp /master.cnf /etc/mysql/conf.d/
fi


echo "master config ... "
/master.sh
echo "complete. "
if [ -n "$MASTER_HOST" ]; then
   echo "replicaof $MASTER_HOST"
   wait_for $MASTER_HOST $MASTER_PORT
   /slave.sh
        echo "Slave config complete."
fi
責(zé)任編輯:華軒 來(lái)源: 微技術(shù)之家
相關(guān)推薦

2022-11-15 17:07:40

開(kāi)發(fā)自動(dòng)化前端

2024-01-24 18:50:21

WebFTP服務(wù)器

2014-03-11 11:10:10

PowerShell自動(dòng)化腳本

2019-04-17 07:59:09

Puppet自動(dòng)化集群管理

2024-10-28 15:40:26

2013-03-22 15:15:28

自動(dòng)化管理部署虛擬化

2024-12-31 09:46:45

2023-04-06 07:09:25

自動(dòng)化部署Actions

2013-11-27 11:34:43

自動(dòng)化部署Python

2015-02-04 09:17:38

亞馬遜AWS云自動(dòng)化

2017-12-17 21:58:18

2022-03-30 09:43:19

jscodeshif自動(dòng)化重構(gòu)開(kāi)發(fā)

2015-11-04 10:22:23

Chef自動(dòng)化應(yīng)用棧

2013-04-11 17:31:28

運(yùn)維自動(dòng)化Cobbler

2015-08-03 16:15:53

Docker部署集群

2011-08-25 09:33:25

MySQL運(yùn)維

2016-12-20 16:47:25

Hadoop部署腳本

2015-12-30 14:50:45

Kubernetes容器技術(shù)Docker

2012-02-09 13:31:03

HibernateJava

2024-11-21 15:24:49

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

国产精品1区二区.| 五月婷婷六月综合| 91久久一区二区| 亚洲国产欧美一区二区三区不卡| 一区二区视频免费观看| 中文字幕一区二区三区欧美日韩| 亚洲国产精品视频在线观看| 久久久精品在线视频| 欧美成人xxx| 懂色av一区二区在线播放| 欧美在线xxx| 裸体武打性艳史| 成午夜精品一区二区三区软件| 在线一区二区三区| 欧美久久在线观看| 成年午夜在线| 99久久久国产精品| 91欧美精品成人综合在线观看| 波多野结衣国产| 日韩精品一区二区久久| 亚洲国产私拍精品国模在线观看| 视频在线观看免费高清| 亚洲欧洲高清| 亚洲国产一区二区在线播放| 一本色道久久99精品综合| 亚洲AV成人无码一二三区在线| 国内一区二区视频| 国产xxx69麻豆国语对白| 久久久久久免费观看| 99精品视频在线| 亚洲一级一级97网| 国产精品福利网站| 久久一区二区三区av| 亚洲系列第一页| 久久精品一区| 69视频在线免费观看| 久久国产精品波多野结衣| 97偷自拍亚洲综合二区| 在线视频日本亚洲性| jizz欧美性20| 久久午夜影院| 欧美r级电影在线观看| 99中文字幕在线| 欧美日韩伦理一区二区| 欧美在线一区二区| 国产视频一区二区三区在线播放 | 欧美大片在线免费观看| 久久精品在线观看视频| 日韩欧美视频| 中文字幕日本精品| 美国美女黄色片| 精品国产99| 亚洲色图狂野欧美| 在线观看国产精品一区| 国精一区二区| 亚洲香蕉伊综合在人在线视看| 亚洲成人日韩在线| 私拍精品福利视频在线一区| 日韩国产一区三区| 青青草福利视频| 伊人久久大香线蕉无限次| 亚洲女人被黑人巨大进入al| 欧美成人午夜精品免费| 国产成人一区| 色黄久久久久久| 欧美爱爱免费视频| 狠色狠色综合久久| 97在线看福利| 成人免费视频国产免费| 日本亚洲欧美天堂免费| 国产专区欧美专区| www.久久伊人| 91香蕉视频黄| 五码日韩精品一区二区三区视频| 亚洲成人三级| 亚洲美女在线国产| 青青草免费在线视频观看| 欧美人体视频xxxxx| 午夜精品久久久久久| 欧美成人精品欧美一级乱| 姬川优奈av一区二区在线电影| 欧美视频一二三区| av在线免费观看不卡| 加勒比色老久久爱综合网| 亚洲欧美国产精品| 永久免费看片视频教学| 怡红院精品视频在线观看极品| 26uuu另类亚洲欧美日本老年| 无码人妻精品一区二区蜜桃色欲| 蜜臀久久99精品久久久久久9| 亚洲一区亚洲二区亚洲三区| 日韩性xxxx| 国产精品午夜在线观看| 波多野结衣与黑人| 欧美日韩免费观看视频| 91精品免费在线观看| 99久久国产精| 香蕉国产精品| 日韩美女在线观看一区| www.色视频| 久久久一区二区三区捆绑**| 亚洲黄色网址在线观看| xxx欧美xxx| 欧美va亚洲va香蕉在线| www.黄色com| 国产亚洲精品v| 91视频8mav| 黄色毛片在线观看| 亚洲一区二区三区中文字幕在线 | 极品少妇一区二区| 久久国产精品免费一区| sm国产在线调教视频| 日韩欧美国产高清91| 亚洲一区二区福利视频| 亚洲自拍电影| 久久久久久久国产精品| 亚洲香蕉在线视频| 久久精品亚洲精品国产欧美kt∨| 91网站在线观看免费| 国产91欧美| 亚洲欧洲在线播放| 国产成人精品片| 国产91丝袜在线18| 日本不卡一区二区三区四区| 蜜桃精品在线| 亚洲精品日韩欧美| 国产 欧美 日韩 在线| 国产一区二区h| 国产精品乱人伦中文| 国产在线日韩在线| 国产午夜在线视频| 欧美午夜片欧美片在线观看| 欧美色图校园春色| 99re6这里只有精品| 国产成人拍精品视频午夜网站| 日日夜夜精品免费| 亚洲一区二区精品视频| 日本少妇激三级做爰在线| 久久亚洲影视| 国产欧美最新羞羞视频在线观看| 韩国三级av在线免费观看| 都市激情亚洲色图| 久久久久成人精品无码中文字幕| 欧美日韩精品| 99久久精品免费看国产一区二区三区 | 国产又粗又长又黄的视频| 久久亚洲电影| 日本一区二区三区免费观看| 成人av观看| 亚洲人高潮女人毛茸茸| www毛片com| 久久久国产精品麻豆| 人妻无码视频一区二区三区| 国产欧美一区二区精品久久久| 国产xxx69麻豆国语对白| 成人欧美一区| 8v天堂国产在线一区二区| 精品人妻伦九区久久aaa片| 国产自产v一区二区三区c| 一级特黄妇女高潮| 超碰成人福利| 欧美在线视频免费| 成人在线观看黄色| 欧美另类久久久品| 久久久久久久黄色| av成人免费在线| 超碰网在线观看| 久久精品国产68国产精品亚洲| 国产在线精品一区免费香蕉 | 亚洲一区二区三区四区在线免费观看| 不许穿内裤随时挨c调教h苏绵 | 美女黄色片视频| 欧美高清视频手机在在线| 亚洲专区国产精品| 不卡的av影片| 亚洲欧美日韩在线高清直播| 中文字幕av无码一区二区三区| 《视频一区视频二区| 宇都宫紫苑在线播放| 亚洲精品社区| 亚洲欧美成人一区| 136福利精品导航| 庆余年2免费日韩剧观看大牛| 日韩黄色影院| 亚洲精品mp4| 亚洲一区在线观| 亚洲国产一区视频| 国产又粗又长免费视频| 粉嫩av一区二区三区在线播放| 大香煮伊手机一区| 国产精品18在线| 91精品二区| 欧美日韩精品免费观看视一区二区 | 偷窥自拍亚洲色图精选| 国产精品丝袜久久久久久不卡| 制服丝袜在线播放| 亚洲香蕉伊综合在人在线视看| 国产黄色小视频在线观看| 色综合天天在线| 日韩一级片av| 国产日产欧美精品一区二区三区| 熟妇女人妻丰满少妇中文字幕| 麻豆成人精品| 日本免费a视频| 日韩亚洲一区在线| 精品产品国产在线不卡| 电影一区中文字幕| 国产盗摄xxxx视频xxx69| 在线观看h网| 伊人久久五月天| 无码国产伦一区二区三区视频| 欧美肥妇毛茸茸| 久久久久精彩视频| 午夜视频一区二区| 欧美性猛交xxxxx少妇| 日本一区二区三区国色天香 | 一级黄色片免费看| 日韩欧美国产激情| 男女视频免费看| 亚洲一区二区三区美女| 国产精品视频一区二区在线观看| 久久蜜桃av一区二区天堂| 折磨小男生性器羞耻的故事| 狠狠色丁香婷综合久久| 欧美婷婷精品激情| 日日摸夜夜添夜夜添精品视频| 霍思燕三级露全乳照| 欧美日韩99| 99中文字幕在线观看| 91影院成人| 伊人久久99| 日韩1区2区| 亚欧精品在线| 成人vr资源| 日韩少妇中文字幕| 国内精品久久久久久久影视简单| 久久亚洲精品欧美| 欧洲亚洲一区二区三区| 国产一区免费在线| 精品久久ai| 黑人巨大精品欧美一区二区小视频| 伊人久久亚洲| 国产日韩欧美综合精品| 一区二区亚洲视频| 黄色国产精品一区二区三区| 精品自拍偷拍| 久久久综合香蕉尹人综合网| 天堂网av成人| 区一区二区三区中文字幕 | 一区二区三区四区视频在线观看| 欧美日韩黑人| 正在播放精油久久| 午夜欧美在线| 免费在线黄网站| 亚洲毛片一区| 99精品视频播放| 美女mm1313爽爽久久久蜜臀| 九九热免费在线观看| 国产一区二区毛片| 无码人妻一区二区三区在线| 成人精品免费看| 黄色正能量网站| 国产日韩视频一区二区三区| www中文在线| 一区二区三区精品| 全部毛片永久免费看| 日本高清不卡aⅴ免费网站| 中文字幕+乱码+中文字幕明步 | www.午夜av| 丁香一区二区三区| 黑人巨大精品欧美| 国产精品国产三级国产a | 国产福利小视频在线观看| 深夜福利亚洲导航| dy888亚洲精品一区二区三区| 久久久久久亚洲| 欧美色999| 5566中文字幕一区二区| 久久影视三级福利片| 无码免费一区二区三区免费播放| 午夜国产精品视频免费体验区| 欧美黑人经典片免费观看| 免费在线一区观看| 亚洲熟女一区二区三区| 国产日韩欧美在线一区| 国产精品视频一区二区三| 天天综合日日夜夜精品| 中文字幕在线观看免费| 精品久久人人做人人爰| 岛国在线视频| 国模视频一区二区| 国产麻豆一区| 激情伦成人综合小说| 亚洲成人99| 日韩av播放器| 成人免费视频一区二区| 精品国产aaa| 精品国产户外野外| 国产毛片在线视频| 亚洲精品午夜精品| 欧美性猛片xxxxx免费中国| 国产精品黄视频| 欧美变态网站| 中文字幕第50页| 日产国产欧美视频一区精品| 免费观看一区二区三区| 国产精品视频在线看| 日本系列第一页| 9191久久久久久久久久久| 国产尤物视频在线| 午夜美女久久久久爽久久| 日本a人精品| 欧美综合激情| 在线亚洲成人| 日本中文字幕精品| 国产精品福利在线播放| 亚洲 欧美 成人| 精品国产精品一区二区夜夜嗨| 欧美日韩在线资源| 青草成人免费视频| 久久精品福利| 久草视频这里只有精品| 国精产品一区一区三区mba视频 | 亚洲精品自拍动漫在线| 日本一区二区三区久久| 亚洲美女激情视频| av成人 com a| 99久久精品久久久久久ai换脸| 久久精品国内一区二区三区水蜜桃| 久久综合久久色| 久久婷婷国产综合国色天香| 国产性猛交普通话对白| 欧美一区二区成人6969| 麻豆传媒视频在线观看| 国产精品中文字幕在线观看| 精品日韩欧美一区| 黑森林福利视频导航| 91女厕偷拍女厕偷拍高清| 国产一区二区三区影院| 亚洲国产欧美一区二区三区同亚洲 | 老司机精品在线| 日韩精品在线中文字幕| 国产福利一区二区三区视频| 成年人一级黄色片| 日韩一区和二区| 欧美6一10sex性hd| 国产精品伊人日日| 99热精品在线| 亚洲成人av免费在线观看| 韩曰欧美视频免费观看| 青青草av免费在线观看| 国产成人精品视频在线观看| 极品美女一区二区三区| 日本久久久久久久久久久久| 国产精品女人毛片| 国产精品嫩草影院精东| 九九精品在线视频| av综合网址| 欧美黄色免费影院| 国产农村妇女毛片精品久久麻豆| 中文字幕+乱码+中文| 蜜臀久久99精品久久久无需会员 | 久久伊人一区二区| 日韩精品成人一区二区三区| 九九热久久免费视频| 欧美一区二区视频网站| 日本在线观看大片免费视频| 国产欧美一区二区三区另类精品| 免费国产自线拍一欧美视频| 国产一区二区三区四区五区六区| 欧美日韩电影在线| 亚洲综合图区| 蜜桃av噜噜一区二区三| 麻豆一区二区在线| 麻豆一区二区三区精品视频| 精品一区二区三区四区在线| 国语自产精品视频在线看抢先版结局| 久久av喷吹av高潮av| 成人国产精品免费观看动漫| 成人a v视频| 伦理中文字幕亚洲| 女同久久另类99精品国产| 手机在线看福利| 亚洲曰韩产成在线| 国产福利片在线| 国产另类第一区| 麻豆91精品91久久久的内涵| 中文字幕第28页| 中文字幕精品久久| 8848成人影院| 超碰超碰在线观看| 亚洲成av人综合在线观看| 999国产在线视频| 国产乱子伦精品| 麻豆成人在线观看| 可以在线观看av的网站| 久久精品久久久久久国产 免费| 欧美一级全黄| 古装做爰无遮挡三级聊斋艳谭| 欧洲国内综合视频|