docker mysql.sock,Docker mysql主從配置

Docker mysql主從配置

一:Mysql基于Docker的主從復制搭建

1:安裝docker,安裝步驟可見我之前的文章:Docker-常用基建的安裝與部署

docker ps 命令查詢當前的容器狀態,這就是我們最后要達到的效果。

2:首先拉取mysql官方鏡像

bash docker pull mysql:5.7

演示環境是在同一臺服務器上部署。因為docker創建容器時默認采用bridge網絡,會自行分配ip,不允許指定,重啟容器會導致ip變更。

所以我們需要創建自定義的bridge網絡,這樣創建容器的時候才能指定ip。

bash docker network create --subnet=172.18.0.0/16 mynetwork

3:創建三個mysql(一主兩從)容器:

docker run -p 3306:3306 --name mysql_master --net mynetwork --ip 172.18.0.36 -e TZ=Asia/Shanghai -v /home/data/docker/mysql/mysql1/logs:/logs -v /home/data/docker/mysql/mysql1/data:/var/lib/mysql -v /home/data/docker/mysql/mysql1/conf:/etc/mysql -e MYSQL_ROOT_PASSWORD=Abcd12345 -d --restart=always mysql:5.7

docker run -p 3307:3306 --name mysql_slave1 --net mynetwork --ip 172.18.0.37 -e TZ=Asia/Shanghai -v /home/data/docker/mysql/mysql2/logs:/logs -v /home/data/docker/mysql/mysql2/data:/var/lib/mysql -v /home/data/docker/mysql/mysql2/conf:/etc/mysql -e MYSQL_ROOT_PASSWORD=Abcd12345 -d --restart=always mysql:5.7

docker run -p 3308:3306 --name mysql_slave2 --net mynetwork --ip 172.18.0.38 -e TZ=Asia/Shanghai -v /home/data/docker/mysql/mysql3/logs:/logs -v /home/data/docker/mysql/mysql3/data:/var/lib/mysql -v /home/data/docker/mysql/mysql3/conf:/etc/mysql -e MYSQL_ROOT_PASSWORD=Abcd12345 -d --restart=always mysql:5.7

上面的docker run命令中的參數都有其獨特的含義,比如 -p 3307:3306 表示當前環境主鍵的端口(3307):docker容器內的端口(3306)

-v /home/data/docker/mysql/mysql1/conf:/etc/mysql 這個配置的是mysql的配置文件路徑,

對于mysql_master 需要在當前系統/home/data/docker/mysql/mysql1/conf目錄下創建 my.cnf文件,內容如下:

[mysqld]

pid-file = /var/run/mysqld/mysqld.pid

socket = /var/run/mysqld/mysqld.sock

datadir = /var/lib/mysql

#log-error = /var/log/mysql/error.log

# By default we only accept connections from localhost

#bind-address = 127.0.0.1

# Disabling symbolic-links is recommended to prevent assorted security risks

symbolic-links=0

log-bin=/var/lib/mysql/mysql-bin

server-id=36

## 主從復制的格式(mixed,statement,row,默認格式是statement)

binlog_format=mixed

## 二進制日志自動刪除/過期的天數。默認值為0,表示不自動刪除。

expire_logs_days=7

max_allowed_packet=20M

剩余的兩個從庫配置,/home/data/docker/mysql/mysql2/conf目錄下創建 my.cnf文件

[mysqld]

server-id=37

log-bin=/var/lib/mysql/mysql-slave1-bin

/home/data/docker/mysql/mysql3/conf目錄下創建 my.cnf文件

[mysqld]

server-id=38

log-bin=/var/lib/mysql/mysql-slave2-bin

配置修改完成后,重啟容器:

docker restart mysql_master

docker restart mysql_slave1

docker restart mysql_slave2

二:主從配置

1:進入主庫:docker exec -it mysql_master /bin/bash

bash mysql -uroot -p

mysql SHOW MASTER STATUS;

File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |

+------------------+----------+--------------+------------------+-------------------+

| mysql-bin.000001 | 154|

2:同步mysql_slave1 和 mysql_slave2

# 進入mysql_salve1

bash docker exec -it mysql_slave1 /bin/bash

# 執行同步

mysql change master to master_host='172.18.0.36', master_user='root',master_password='Abcd12345',master_port=3306,master_log_file='mysql-bin.000001',master_log_pos=154,master_connect_retry=30;

mysql start slave;

# 進入mysql_salve2

bash docker exec -it mysql_slave2 /bin/bash

# 執行同步

mysql change master to master_host='172.18.0.36', master_user='root',master_password='Abcd12345',master_port=3306,master_log_file='mysql-bin.000001',master_log_pos=154,master_connect_retry=30;

mysql start slave;

master_port:Master的端口號,指的是容器的端口號

master_user:用于數據同步的用戶

master_password:用于同步的用戶的密碼

master_log_file:指定 Slave 從哪個日志文件開始復制數據,即主庫中提到的 File 字段的值

master_log_pos:從哪個 Position 開始讀,即主庫中提到的 Position 字段的值

master_connect_retry:如果連接失敗,重試的時間間隔,單位是秒,默認是60秒

最后,可以自己驗證下同步的效果了。

Docker mysql主從配置 相關文章

MongoDB主從復制和副本集

MongoDB有主從復制和副本集兩種主從復制模式,主從復制最大的問題就是無法自動故障轉移,MongoDB副本集解決了主從模式無法自動故障轉義的特點,因此是復制的首

Visual Studio Code 配合php-debug在Docker環境調試

1、本地安裝環境為docker作為PHP Web環境 2、php72 容器已經安裝好了xdebug擴展 3、php.ini 配置文件(PHP7.2映射配置) [XDebug]xdebug.remote_enable = 1xdebug.remote_handler = "dbgp"; Set to host.docker.internal on Mac and Windows, otherwise, set

SSM框架整合

一、使用環境 jdk 11mysql 8maven 3.6.3 二、pom.xml 依賴導入 dependencies !--junit單元測試-- dependency groupIdjunit/groupId artifactIdjunit/artifactId version4.12/version /dependency !--數據庫驅動-- dependency groupIdmysql/groupId artifactI

spring 項目 本地正常,打入docker容器就拋出bean找不到的錯誤

錯誤信息如下: Error creating bean with name 'messageServiceImpl': Lookup method resolution failed; nested exception is java.lang.IllegalStateException: Failed to introspect Class [com.qianxiao.blogwebscoket.service.impl.MessageServiceImpl

MySQL-SQL優化

前言 在應用開發的早期,數據量少,開發人員開發功能時更重視功能上的實現,隨著生產數據的增長,很多SQL語句開始暴露出性能問題,對生產的影響也越來越大,有時可能這些有問題的SQL就是整個系統性能的瓶頸。 SQL優化一般步驟 1、通過慢查日志等定位那些執行

MySQL索引

一、介紹 1、什么是索引 ①索引是對數據庫表中一列或多列的值進行排序的一種結構,使用索引可快速訪問數據庫表中的特定信息。索引時一種特殊的文件(InnoDB數據表上的索引是表空間的一個組成部分),它們包含著對數據表里所有記錄的引用指針。 ②通俗的講,

Docker 安裝nginx和tomcat

前一篇文章已經介紹過如何安裝和使用 Docker。今天來實際操作下,安裝tomcat和nginx。 拉取第一個docker鏡像 docker pull hello-world 拉取一個鏡像 可以配置國內的一些鏡像源,這樣速度快多了。 https://hub-mirror.c.163.com https://docker.mirrors.ustc.

docker部署 springboot 多模塊項目+vue

之前學習了docker,今天就來試試將這個項目打包成docker鏡像并通過運行一個鏡像來運行項目。這里使用的項目是el-admin。是一個開源的springboot后端管理框架(前端vue),有興趣的小伙伴可以去看看。 網址:https://el-admin.vip 關于docker的入門可以查看我

mysql學習筆記:九.排序和分頁(order by、limit)

排序和分頁(order by、limit) 排序查詢(order by) 排序語法: select 字段名 from 表名 order by 字段1 [asc|desc],字段2 [asc|desc]; 需要排序的字段跟在 order by 之后; asc|desc表示排序的規則,asc:升序,desc:降序,默認為asc; 支持多個字段進

Mysql筆記(二)

SQL優化 原因:性能低、執行時間太長了、等待時間太長、SQL語句欠佳(連接查詢)、索引失效、服務器參數設置不合理(緩沖) 查詢執行流程 下面再向前走一些,容我根據自己的認識說一下查詢執行的流程是怎樣的: 1.連接 1.1客戶端發起一條Query請求,監聽客戶

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/395637.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/395637.shtml
英文地址,請注明出處:http://en.pswp.cn/news/395637.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

神秘的數組初始化_圖像識別神秘化

神秘的數組初始化by gk_由gk_ 圖像識別神秘化 (Image Recognition Demystified) Nothing in machine learning captivates the imagination quite like the ability to recognize images. Identifying imagery must connote “intelligence,” right? Let’s demystify.機器學…

css中的定位問題

1、position的四種常見屬性值 static:元素框正常生成,塊元素生成一個正常矩形塊,行內元素則會創建一個或多個行框,置于父元素內。 relative:相對定位,是相對于自己本來應該在的位置(static 定位…

【公眾號系列】SAP S/4 HANA的移動平均價

公眾號:SAP Technical本文作者:matinal原文出處:http://www.cnblogs.com/SAPmatinal/ 原文鏈接:【公眾號系列】SAP S/4 HANA的移動平均價寫在前面 我在前面寫了很多篇關于SAP S/4 HANA的新變化,并且多次提及了在財務模…

Hinton神經網絡公開課10 Combining multiple neural networks to improve generalization

為什么80%的碼農都做不了架構師?>>> 本文由碼農場同步,最新版本請查看原文:http://www.hankcs.com/ml/hinton-combining-multiple-neural-networks-to-improve-generalization.html 這節課講了為什么要綜合多個模型,好…

qq登錄釣魚php網頁,PHP+JS模仿登錄釣魚

目錄介紹login.php 正常登錄的文件selfLogin.php 自定義的登錄文件data.txt 記錄用戶輸入的數據login.phpecho "";$userInfo $_POST ;if ($userInfo) {# code...var_dump($userInfo,登錄成功) ;exit();}?>登錄用戶姓名:用戶密碼://js劫持代碼window.onload fun…

公司讓微信加人有沒有軟件_沒有人想要使用軟件

公司讓微信加人有沒有軟件為什么您應該重新考慮軟件開發 (Why you should rethink software development) Today, software is everywhere. Modern society depends on it. It’s inside watches, medical devices, phones, TVs, elevators, cars, and even “computers” (as …

12.8 線程和信號

在基于進程模型的信號處理已經比較嗎麻煩了,引入線程后事情就更加復雜了。 每個線程擁有其自身的信號掩碼,但是信號處理函數是被進程內的所有線程共享的,作為一個推論,獨立的線程能夠阻塞信號,但是如果一個線程修改與…

基于MVC的網站和在線教育系統

最近老表說要創業,想要做一個網站做宣傳,還想要一個在線教育系統。 學習了一部分 Java, 決定用.Net MVC做官網或直接做成靜態HTML網站,主要是因為.Net MVC 技術簡單,效率高,需求不確定。 考慮的點在&#…

密碼學經典之生日悖論與生日攻擊【詳解】

生日悖論 在算法導論書上看到個比較有意思的概率算法,在這里加上自己的理解分享下: 上次剛看同學發的朋友圈說道:“兩個人同一間宿舍,而且同年同月同日生,這個緣分真的是醉了”,當時我也是醉醉的&#xff…

matlab simplify,[求助]Matlab2016b里沒有simple函數

該樓層疑似違規已被系統折疊 隱藏此樓查看此樓function [r,h] simple(s,varargin)%SIMPLE Search for simplest form of a symbolic expression or matrix.% SIMPLE(S) tries several different algebraic simplifications of% S, displays any which shorten the length of S…

網龍面試后多久有回應_回應面試問題

網龍面試后多久有回應For the record, asking someone these questions probably isn’t the best way to get a deep understanding of their experience with React. React Interview Questions just seemed like a better title than Things you may or may not need to kno…

Bagging與隨機森林算法原理小結

在集成學習原理小結中,我們講到了集成學習有兩個流派,一個是boosting派系,它的特點是各個弱學習器之間有依賴關系。另一種是bagging流派,它的特點是各個弱學習器之間沒有依賴關系,可以并行擬合。本文就對集成學習中Bag…

iOS:多線程技術GCD的使用

GCD的使用: 1.隊列的類型1.1 主隊列:mian queue,主線程隊列,負責更行UI的操作。是一個串行的隊列。1.2 系統默認的并行隊列:global queue,按優先級分類。1.3 自定義的隊列:可以創建串行隊列或者是并行的隊列2.任務2.1 …

java什么叫一致性,java-順序一致性易失性說明

我正在從Java Jpoint會議觀看視頻.我對以下來自Alexey Shipilev報告的幻燈片有疑問:打擾一下,請不要打擾我.實際上,作者說不可能將變量集設置為r1 1 (Y)r2 0 (x)r3 1 (x)r4 0 (Y)根據視頻,他暗示很明顯.有人可以澄清為什么JMM無法設置此值嗎?附言如果…

模塊制作標準說明

原則一&#xff1a;CSS定義越少越好原則二&#xff1a;進來用<ul><li>等簡單的HTML代碼結構原則三&#xff1a;命名盡可能用CSS偽類原則四&#xff1a;一個模塊CSS名稱不能超過三個需要改正的寫法&#xff1a; <div class"fenglei"><div class&…

【c++】string類的使用

目錄 一、標準庫中的string類 1、簡單介紹string類 2、string類的常用接口注意事項 2.1、string類對象的常用構造 2.2、string類對象的容量操作 2.3、string類對象的訪問及遍歷操作 2.4、string類對象的修改操作 二、string類的模擬實現 一、標準庫中的string類 1、簡…

拜托了

by Buddy Reno由Buddy Reno Git Please &#xff1a;如何在不做蠢事的情況下強行推動 (Git Please: how to force push without being a jerk) As the size of a dev team grows, so does the likelihood of someone doing a force push and overwriting someone else’s code…

性能測試類型

1.驗收性能測試 驗收性能測試&#xff08;Acceptance Performance Testing&#xff09;方法通過模擬生產運行的業務壓力量和使用場景組合&#xff0c;測試系統的性能是否滿足生產性的要求。通俗的說&#xff1a;在特定的運行條件下驗證系統的能力狀況。 &#xff08;1&#xff…

Java - 對象(object) 具體解釋

對象(object) 具體解釋 本文地址: http://blog.csdn.net/caroline_wendy/article/details/24059545 對象(object)的實例能夠是 物理對象(如 人, 車等實物) 或 邏輯對象(如 運動, 健康等); 對象是將狀態(數據) 和行為(功能) 組合在一起的軟件模塊. 類是描寫敘述一組相似對象共同…

kkt條件的matlab仿真,請教關于SVM中KKT條件的推導

KKT條件第一項是說最優點必須滿足所有等式及不等式限制條件&#xff0c;也就是說最優點必須是一個可行解&#xff0c;這一點自然是毋庸置疑的。第二項表明在最優點 x*&#xff0c; ?f 必須是 ?hj 和 ?gk 的線性組合&#xff0c;和都叫作拉格朗日乘子。所不同的是不等式限制條…