Docker 搭建mysql 集群(二)

PXC方案

很明显 PXC方案在任何一个节点写入的数据都会同步到其他节点,数据双向同步的(在任何节点上都可以同时读写)

创建MySQL PXC集群

1 安装PXC镜像

docker pull percona/percona-xtradb-cluster:5.7.21

2 为PXC镜像改名

docker tag percona/percona-xtradb-cluster:5.7.21 pxc

 3 创建net1网段

docker network create --subnet=172.18.0.0/16 net1

4 创建5个数据卷

docker volume create --name v1

docker volume create --name v2

docker volume create --name v3

docker volume create --name v4

docker volume create --name v5

 5 创建备份数据卷(用于热备份数据)

docker volume create --name backup

6 创建5节点的PXC集群  

注意,每个MySQL容器创建之后,因为要执行PXC的初始化和加入集群等工作,耐心等待1分钟左右再用客户端连接MySQL。另外,必须第1个MySQL节点启动成功,用MySQL客户端能连接上之后,再去创建其他MySQL节点。  

创建第1个MySQL节点

docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=abc123456 -e CLUSTER_NAME=PXC -e XTRABACKUP_PASSWORD=abc123456 -v v1:/var/lib/mysql -v backup:/data --privileged --name=node1 --net=net1 --ip 172.18.0.2 pxc

创建第2个MySQL节点

docker run -d -p 3307:3306 -e MYSQL_ROOT_PASSWORD=abc123456 -e CLUSTER_NAME=PXC -e XTRABACKUP_PASSWORD=abc123456 -e CLUSTER_JOIN=node1 -v v2:/var/lib/mysql -v backup:/data --privileged --name=node2 --net=net1 --ip 172.18.0.3 pxc

创建第3MySQL节点

docker run -d -p 3308:3306 -e MYSQL_ROOT_PASSWORD=abc123456 -e CLUSTER_NAME=PXC -e XTRABACKUP_PASSWORD=abc123456 -e CLUSTER_JOIN=node1 -v v3:/var/lib/mysql --privileged --name=node3 --net=net1 --ip 172.18.0.4 pxc

创建第4MySQL节点

docker run -d -p 3309:3306 -e MYSQL_ROOT_PASSWORD=abc123456 -e CLUSTER_NAME=PXC -e XTRABACKUP_PASSWORD=abc123456 -e CLUSTER_JOIN=node1 -v v4:/var/lib/mysql --privileged --name=node4 --net=net1 --ip 172.18.0.5 pxc

创建第5MySQL节点

docker run -d -p 3310:3306 -e MYSQL_ROOT_PASSWORD=abc123456 -e CLUSTER_NAME=PXC -e XTRABACKUP_PASSWORD=abc123456 -e CLUSTER_JOIN=node1 -v v5:/var/lib/mysql -v backup:/data --privileged --name=node5 --net=net1 --ip 172.18.0.6 pxc

查看容器运行状态  

docker container ls

 可以创建一个数据库或表,发现在任意节点创建的数据都会同步到其他节点

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/454209.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【240121】桂林电子科技大学—调剂信息

桂林电子科技大学 学校层级:双非 调剂专业:081000 信息与通信工程 发布时间:2024.1.21 发布来源:网络发布 背景:欢迎广大08工学专业考生调剂进我的课题组,电子信息专业,也欢迎往届同学调剂…

哪些行业能考PMP?给个人带来什么价值?

目前项目管理的已在国际航天、电子、通讯、计算机、软件开发、建筑、制药、金融等行业甚至政府机关内广泛应用。 一、PMP学员细分&行业应用 在充分竞争的市场环境下,企业之间的竞争,就是项目管理成熟度之间的竞争,越来越多的企业认识到…

如何用VS2022打包exe

1.添加打包工具。 VS2022中选择 扩展->管理扩展,输入 Setup,选择 Microsoft Vusual Studio Installer Porjiects 2022。 2.在项目选择 “添加新的项目”,选择 Setup Project 3.生成Setup工程。 4.添加为打包项目添加文件和文件夹(如果打…

【Java网络编程05】网络原理进阶(三)

1. HTTP协议概述 HTTP协议:又被称为"超文本传输协议",是一种使用非常广泛的应用层协议,我们之前在文件章节介绍过文本文件与二进制文件的区别,文本可以看做字符串(能在utf8/gbk等编码表中查找到合法字符&am…

MySQL篇----第八篇

系列文章目录 文章目录 系列文章目录前言一、存储过程优化思路二、触发器(一段能自动执行的程序)三、数据库并发策略四、MySQL 中有哪几种锁?五、MySQL 中有哪些不同的表格?前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳…

常用存储器

目录 一、存储器的种类 二、易失性存储器(RAM) 1. DRAM (1)SDRAM (2)DDR SDRAM 2. SRAM 3. DRAM与SRAM的应用场合 三、非易失性存储器 1. ROM (1)MASK ROM (2…

tab切换

任务描述&#xff1a;鼠标点击不同商品类别标题时切换不同页面 html代码&#xff1a; <div class"tab"><div class"tab-head"><h3>家电</h3><ul><li><a class"active" href"javascript:;"&g…

企业动态 | UFAPKU“金融科技”沙龙走进同创永益——前沿技术在金融科技领域的应用

金融科技作为金融发展的驱动力量&#xff0c;对金融行业有着深远的影响。金融行业通过技术创新和数字化转型&#xff0c;极大地提高了金融服务和产品的效率和便捷性。1月21日&#xff0c;UFAPKU“金融科技”第二期沙龙在北大校友企业同创永益北京总部举办&#xff0c;数十位来自…

从0搭建react+ts+redux+axios+antd项目

文章目录 一、安装及初始化二、TypeScript配置三、Webpack配置四、Prettier统一编码风格五、使用less六、Antd 安装及使用七、添加redux及使用八、添加Router及配置九、安装axios十、echarts按需引入 本文介绍了如何用creat-react-app脚手架搭建一个react项目的基本结构&#x…

哪种安全数据交换系统,可以满足信创环境要求?

安全数据交换系统是一种专门设计用于在不同网络环境之间安全传输数据的技术解决方案。这类系统确保数据在传输过程中的完整性、机密性和可用性&#xff0c;同时遵守相关的数据保护法规和行业标准。 使用安全数据交换系统的原因主要包括以下几点&#xff1a; 1、数据保护&#…

【制作100个unity游戏之23】实现类似七日杀、森林一样的生存游戏10(附项目源码)

本节最终效果演示 文章目录 本节最终效果演示系列目录前言快捷栏绘制UI代码控制快捷列表信息 源码完结 系列目录 前言 欢迎来到【制作100个Unity游戏】系列&#xff01;本系列将引导您一步步学习如何使用Unity开发各种类型的游戏。在这第23篇中&#xff0c;我们将探索如何制作…

【LeetCode力扣】单调栈解决Next Greater Number(下一个更大值)问题

目录 1、题目介绍 2、解题思路 2.1、暴力破解法 2.2、经典Next Greater Number问题解法 1、题目介绍 原题链接&#xff1a;496. 下一个更大元素 I - 力扣&#xff08;LeetCode&#xff09; 示例1&#xff1a; 输入&#xff1a;nums1 [4,1,2], nums2 [1,3,4,2].输出&…