亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

docker中怎么搭建mysql主從復制

發布時間:2021-06-21 14:58:28 來源:億速云 閱讀:118 作者:Leah 欄目:大數據

今天就跟大家聊聊有關docker中怎么搭建mysql主從復制,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

一、通過docker安裝mysql,我在這里選擇是的5.6版本

1)搜索從docker啦取mysql鏡像

docker pull mysql:5.6

2)使用本鏡像啟動兩個mysql容器(主、從容器)

master(主)

docker run -p 3316:3306 --name master-mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.6

slave(從)

docker run -p 3317:3306 --name slave-mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.6

參數解析:

-p 將容器的 3306 端口映射到主機的 3306 端口。

--name 使用docker鏡像mysql:5.6,將容器命名為mastermysql。

-e -e MYSQL_ROOT_PASSWORD=123456 初始化密碼。

-d 后臺運行容器,并返回容器ID。

查看容器是否正常運行:docker ps

二、配置mysql主服務器(Master)

1)進入mysql主服務器內部

docker exec -it e8355163bbbc /bin/bash

2)編輯my.cnf

cd /etc/mysql

編輯 my.cnf(vim my.cnf)

注意:可能會提示vim沒有安裝,可以運行 apt-get install vim 安裝,然后再執行vim my.cnf

在末尾處添加

[mysqld]
server-id=100
log-bin=mysql-bin

配置完成后需要重啟mysql,重啟過程中docker鏡像也會停止,所以也需要重啟一下鏡像

service mysql restart

docker start mysql-master

3)下一步在Master數據庫創建數據同步用戶,授予用戶 slave REPLICATION SLAVE權限和REPLICATION CLIENT權限,用于在主從庫之間同步數據。

CREATE USER 'slave'@'%' IDENTIFIED BY '123456';

GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'slave'@'%';

三、配置mysql從服務器(Slave)

1)進入mysql從服務器內部

docker exec -it 從服務器id /bin/bash

2)編輯my.cnf

cd /etc/mysql

編輯 my.cnf(vim my.cnf)

注意:可能會提示vim沒有安裝,可以運行 apt-get install vim 安裝,然后再執行vim my.cnf

在末尾處添加

[mysqld]
server-id=101
log-bin=mysql-slave-bin

relay_log=edu-mysql-relay-bin

配置完成后需要重啟mysql,重啟過程中docker鏡像也會停止,所以也需要重啟一下鏡像

service mysql restart

docker start mysql-slave

四、其他設置

1)鏈接Master(主)和Slave(從)

在Master進入mysql,執行show master status;

File和Position字段的值后面將會用到,在后面的操作完成之前,需要保證Master庫不能做任何操作,否則將會引起狀態變化,File和Position字段的值變化。

2)在Slave中進入mysql,執行

change master to master_host='172.17.0.2', master_user='slave', master_password='123456', master_port=3306, master_log_file='mysql-bin.000001', master_log_pos= 433, master_connect_retry=30;

命令說明:

master_host :Master的地址,指的是容器的獨立ip,可以通過docker inspect --format='{{.NetworkSettings.IPAddress}}' 容器名稱|容器id查詢容器的ip

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

master_user:用于數據同步的用戶

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

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

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

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

3)在Slave 中的mysql終端執行 show slave status \G; 用于查看主從同步狀態。

正常情況下,SlaveIORunning 和 SlaveSQLRunning 都是No,因為我們還沒有開啟主從復制過程。使用start slave;開啟主從復制過程,然后再次查詢主從同步狀態show slave status \G;

看完上述內容,你們對docker中怎么搭建mysql主從復制有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

靖州| 南京市| 正安县| 永年县| 石林| 思茅市| 开原市| 青铜峡市| 陆河县| 建阳市| 玉树县| 舟山市| 易门县| 怀柔区| 文昌市| 恭城| 克什克腾旗| 大同市| 沅江市| 仁布县| 扬州市| 上蔡县| 岐山县| 库尔勒市| 漳浦县| 光山县| 海安县| 蒙城县| 安平县| 富蕴县| 玛多县| 广昌县| 鄂伦春自治旗| 肇东市| 托克托县| 崇明县| 凤冈县| 黄山市| 司法| 永安市| 西藏|