IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> Docker搭建Mysql主主架构 -> 正文阅读

[大数据]Docker搭建Mysql主主架构

mysql主从架构原理

在这里插入图片描述

MySQL通用架构方案

在这里插入图片描述

搭建步骤

1. docker创建俩台mysql 端口:23306 和 33306

docker run -p 23306:3306 --privileged=true --name mysql-23306
 -v /D/Docker/mysql-23306/mysql:/etc/mysql
 -v /D/Docker/mysql-23306/logs:/logs
 -v /D/Docker/mysql-23306/data:/var/lib/mysql
 -v /D/Docker/mysql-23306/mysql-files:/var/lib/mysql-files 
 -e MYSQL_ROOT_PASSWORD=admin -d mysql:5.7

2. 创建my.cnf,并将my.cnf拷贝到docker容器中,并重启生效

docker cp D:/Docker/mysql-23306/mysql/my.cnf mysql-23306:/etc/mysql/

配置文件内容如下:

[mysqld]
# 注意这里的server_id不能一样
server_id = 2
log_bin=mysql-bin
replicate-wild-ignore-table=mysql.*
replicate-wild-ignore-table=sys.*

链接mysql,使用sql查看刚刚配置的server_id

show VARIABLES like '%server_id%'

3. 配置完成,开始执行sql,设置主从

  1. docker查看俩台mysql的ip。
λ docker inspect mysql-23306 --format='{{.NetworkSettings.IPAddress}}
'172.17.0.2

λ docker  inspect mysql-33306 --format='{{.NetworkSettings.IPAddress}}
'172.17.0.3
  • 注意:这里是为了后面同步做准备。要写容器内的ip地址,而不能是127.0.0.1。否则,使用show slave status 命令查看状态的时候,Slave_IO_Runing会一直显示Colleting。
  1. 在23306创建账号,刷新权限
grant replication slave on *.* to 'rep'@'%' identified by '123456';
FLUSH PRIVILEGES;
# 查看主机状态,获取File和Position
show master status;
  1. 在33306执行change命令,并开启同步
    change命令语法:CHANGE MASTER TO MASTER_HOST='master_host_name', MASTER_USER='replication_user_name', MASTER_PASSWORD='replication_password', MASTER_LOG_FILE='recorded_log_file_name',MASTER_LOG_POS='POS';
CHANGE MASTER TO MASTER_HOST='172.17.0.2', MASTER_USER='rep', MASTER_PASSWORD='123456', MASTER_LOG_FILE='mysql-bin.000002',MASTER_LOG_POS=482;
start slave;
stop slave;
show slave status

至此,主从同步完成。

主主同步

接着我们把33306当作主库,23306当作从库,再次重复操作。

  1. 在33306创建账号,刷新权限
grant replication slave on *.* to 'rep'@'%' identified by '123456';
FLUSH PRIVILEGES;
show master status;
  1. 在23306执行change命令,并开启同步
CHANGE MASTER TO MASTER_HOST='172.17.0.3', MASTER_USER='rep', MASTER_PASSWORD='123456', MASTER_LOG_FILE='mysql-bin.000002',MASTER_LOG_POS=154;
start slave;
stop slave;
show slave status
  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-12-25 11:16:02  更:2022-12-25 11:19:04 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/10 5:49:58-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码