日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

docker mysql5.7 主从_docker-compose mysql5.7.30 主从

發布時間:2025/3/12 数据库 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 docker mysql5.7 主从_docker-compose mysql5.7.30 主从 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、安裝mysql5.7.30主庫

1.準備docker和docker-compose環境

2.創建yml目錄,相關數據掛載

#yml存放的目錄

mkdir -p /root/docker-compse/mysql

#主庫的/var/lib/mysql 數據的掛載目錄

mkdir -p /data/mysql5matser

#不用slave 了,用replication的縮寫replic , slave 是奴隸的意思,在美國有種族歧視的之嫌

#從庫的/var/lib/mysql 數據的掛載目錄

mkdir -p /data/mysql5replic

3.創建網絡空間,配置時區

docker network create mysql-replic

echo 'Asia/Shanghai' > /etc/timezone

4.提前準備好所需鏡像

docker pull mysql:5.7.30

5.主庫/root/docker-compse/mysql/master.yml

version: '3.7'

services:

#主庫服務名稱

mysql-master:

#容器名稱

container_name: mysql-master

#鏡像名稱 提前 docker pull mysql:5.7.30 不然會很慢

image: mysql:5.7.30

#docker 重啟后容器重啟

restart: always

#選擇自建bridge網絡

networks:

- mysql_replic

#mysql 參數配置 my.cnf里面的配置,這里簡單配置下,可以配置volumes /etc/my.cnf:/etc/my.cnf

command: --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci --server-id=1 --log-bin=mysql-bin

environment:

- TZ=Asia/Shanghai

#默認密碼配置 123456 修改成您的密碼

- MYSQL_ROOT_PASSWORD=123456

ports:

- 3307:3306

volumes:

- /etc/localtime:/etc/localtime

- /etc/timezone:/etc/timezone

#掛載目錄 /var/lib/mysql 是mysql的數據

- /data/mysql5matser:/var/lib/mysql

#配置網絡

networks:

mysql_replic:

name: mysql_replic

#強制使用已經創建好的網絡,不然報錯

external: true

6.啟動主庫

docker-compose -f master.yml up -d

7.進入容器,登錄主庫

#進入docker

docker exec -it mysql-master bash

#進入docker的mysql

mysql -uroot -p

#輸入密碼

8.創建同步賬號replic,授權同步權限,查看主庫狀態信息

-- 創建同步賬號

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

-- 授權權限

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

-- 查看主節點狀態

show master status;

-- 數據的結果

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

-- | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |

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

-- | mysql-bin.000003 | 619 | | | |

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

二、安裝mysql5.7從庫,同步主庫數據

1.從庫/root/docker-compse/mysqlreplic.yml

version: '3.7'

services:

#從庫服務名稱

mysql-replic:

#容器名稱

container_name: mysql-replic

#鏡像名稱 提前 docker pull mysql:5.7.30 不然會很慢

image: mysql:5.7.30

#docker 重啟后容器重啟

restart: always

#選擇自建bridge網絡

networks:

- mysql_replic

command: --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci --server-id=2 --log-bin=mysql-slave-bin --relay_log=ep-mysql-relay-bin? --read_only=1

environment:

#時區

- TZ=Asia/Shanghai

#默認密碼配置

- MYSQL_ROOT_PASSWORD=123456

volumes:

- /etc/localtime:/etc/localtime

- /etc/timezone:/etc/timezone

#掛載目錄 /var/lib/mysql 是數據盤

- /data/mysql5replic:/var/lib/mysql

ports:

- 3308:3306

#配置網絡

networks:

mysql_replic:

name: mysql_replic

#強制使用已經創建好的網絡,不然報錯

external: true

2.啟動從庫

docker-compose -f replic.yml up -d

#不用管 提醒

#WARNING: Found orphan containers (mysql-master) for this project. If you removed or renamed this service in your compose file, you can run this command with the --remove-orphans flag to clean it up.

3.進入容器,登錄從庫

#進入容器

docker exec -it mysql-replic bash

#登錄mysql

mysql -uroot -p

#輸入密碼

4.同步腳本

-- 查看從庫狀態

show slave status ;

-- 第一次安裝執行會返回

-- Empty set (0.00 sec)

-- 同步設置

change master to master_host='mysql-master', master_user='replic', master_password='123456', master_port=3306, master_log_file='mysql-bin.000003', master_log_pos=619;

-- 啟動同步

start slave;

-- 查看同步結果

show slave status \G;

-- *************************** 1. row ***************************

-- Slave_IO_State: Waiting for master to send event

-- Master_Host: mysql-master

-- Master_User: replic

-- Master_Port: 3306

-- Connect_Retry: 60

-- Master_Log_File: mysql-bin.000003

-- Read_Master_Log_Pos: 619

-- Relay_Log_File: ep-mysql-relay-bin?.000002

-- Relay_Log_Pos: 320

-- Relay_Master_Log_File: mysql-bin.000003

-- Slave_IO_Running: Yes

-- Slave_SQL_Running: Yes

-- Replicate_Do_DB:

-- Replicate_Ignore_DB:

-- Replicate_Do_Table:

-- Replicate_Ignore_Table:

-- Replicate_Wild_Do_Table:

-- Replicate_Wild_Ignore_Table:

-- Last_Errno: 0

-- Last_Error:

-- Skip_Counter: 0

-- Exec_Master_Log_Pos: 619

-- Relay_Log_Space: 532

-- Until_Condition: None

-- Until_Log_File:

-- Until_Log_Pos: 0

-- Master_SSL_Allowed: No

-- Master_SSL_CA_File:

-- Master_SSL_CA_Path:

-- Master_SSL_Cert:

-- Master_SSL_Cipher:

-- Master_SSL_Key:

-- Seconds_Behind_Master: 0

-- Master_SSL_Verify_Server_Cert: No

-- Last_IO_Errno: 0

-- Last_IO_Error:

-- Last_SQL_Errno: 0

-- Last_SQL_Error:

-- Replicate_Ignore_Server_Ids:

-- Master_Server_Id: 1

-- Master_UUID: b2353e18-8d00-11ea-9de4-0242ac170002

-- Master_Info_File: /var/lib/mysql/master.info

-- SQL_Delay: 0

-- SQL_Remaining_Delay: NULL

-- Slave_SQL_Running_State: Slave has read all relay log; waiting for more updates

-- Master_Retry_Count: 86400

-- Master_Bind:

-- Last_IO_Error_Timestamp:

-- Last_SQL_Error_Timestamp:

-- Master_SSL_Crl:

-- Master_SSL_Crlpath:

-- Retrieved_Gtid_Set:

-- Executed_Gtid_Set:

-- Auto_Position: 0

-- Replicate_Rewrite_DB:

-- Channel_Name:

-- Master_TLS_Version:

5.成功標志

-- 表示同步成功

-- Slave_IO_Running: Yes

-- Slave_SQL_Running: Yes

三、檢查主從同步

1.進入主庫創建一個數據庫

create database test;

show databases;

-- 輸出

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

-- | Database |

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

-- | information_schema |

-- | mysql |

-- | performance_schema |

-- | sys |

-- | test |

.主庫創建只讀賬號,供從庫只讀使用

grant select on *.* TO 'view'@'%' identified by '123456';

-- 從庫修改數據會

--1290 - The MySQL server is running with the --read-only option so it cannot execute this statement

3.進入從庫查看

show databases;

-- 輸出

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

-- | Database |

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

-- | information_schema |

-- | mysql |

-- | performance_schema |

-- | sys |

-- | test |

四、卸載mysql主從

1.刪除容器

#刪除從庫容器

docker-compose -f replic.yml down

#刪除主庫容器

docker-compose -f master.yml down

2.刪除數據(謹慎使用此命令)

rm -rf /data/mysql5matser

rm -rf /data/mysql5replic

PS:如果疑問留言,如果對您有用,請點贊支持

下期預告 springboot mybatis druid 實現讀寫分離

參考文檔

總結

以上是生活随笔為你收集整理的docker mysql5.7 主从_docker-compose mysql5.7.30 主从的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 97视频人人 | 精品一区二区国产 | 午夜在线免费观看 | 自拍偷拍视频在线观看 | 女同在线观看 | 成人一二三区 | 亚洲天堂av中文字幕 | 超碰97在线免费观看 | 无毛av| 可以免费在线观看的av | 亚洲一区不卡 | 精品免费国产一区二区三区四区 | 末发成年娇小性xxxxx | 一区二区三区福利 | 色婷婷精品久久二区二区密 | 亚洲欧洲成人精品久久一码二码 | 一本—道久久a久久精品蜜桃 | 稀缺呦国内精品呦 | 国产免费成人在线视频 | 超碰下载页面 | 一级做a免费视频 | 国产欧美又粗又猛又爽 | 毛片久久久 | 男人与雌宠物交h | 凹凸日日摸日日碰夜夜 | 三级免费看 | com国产 | 久久成人久久爱 | 国产特级黄色片 | 91正在播放 | 日韩精品一区二区在线看 | 日韩电影一区二区 | 日韩在线小视频 | 精品免费视频一区二区 | 亚洲精品中文字幕成人片 | 欧美视频在线不卡 | 亚洲调教| 丁香花高清在线观看完整动漫 | 久久久久人妻精品色欧美 | 99午夜视频| 日韩中文字幕免费视频 | 国语对白在线观看 | 亚洲欧美一区二区三区久久 | 亚洲精品第二页 | 亚洲黄色成人网 | 国产免费午夜 | 亚洲熟妇av日韩熟妇在线 | 亚洲风情av| 中文日韩av | 亚洲在线天堂 | 日韩成人短视频 | 在线免费观看麻豆 | 午夜激情国产 | 网站av| 亚洲黄色三级视频 | 日本高潮视频 | 成人欧美一区二区三区黑人冫 | 在线中文字幕播放 | 最近中文字幕在线中文高清版 | 日韩成人自拍 | 黄色免费网站在线看 | 国产成人黄色片 | 日韩综合在线视频 | 精品黑人一区二区三区观看时间 | 免费观看的黄色网址 | 1024精品一区二区三区日韩 | 欧美成人免费高清视频 | 日日骚网 | 欧美精品一区二区三区久久久 | av中文一区| 日本一区二区视频在线播放 | 先锋av资源| 国产中文在线播放 | 日韩一级精品 | 亚洲精品高潮久久久久久久 | 色欲亚洲Av无码精品天堂 | 高清国产视频 | 一本毛片 | 美日韩在线视频 | 横恋母在线观看 | 中文有码在线 | 一本色道久久综合亚洲精品酒店 | 国产电影一区在线观看 | 国产做爰免费观看 | 在线观看国产一区二区三区 | 亚洲淫片| 亚洲午夜精品视频 | 欧美做爰猛烈床戏大尺度 | 狂野欧美性猛交xxxx巴西 | av资源首页 | 免费观看日本 | 日本少妇高潮喷水xxxxxxx | 免费av大全 | 国产一级片播放 | 亚洲综合在线五月 | 超碰按摩 | 久久亚洲在线 | 秋霞伦理一区二区 | 男女黄床上色视频 |