最新要闻
- 山姆会员店寿司致多人上吐下泻:官方拒绝三倍赔偿
- 天天新消息丨致敬葫芦娃?保时捷911 Carrera GTS泰国特别版官图发布
- 环球最资讯丨14.5英寸超大屏+天玑9000!联想Y900平板正式发布:4999元起
- 天天观点:13代酷睿+RTX 40!联想拯救者Y7000P 2023电竞本发布:屏幕大升级
- 13900HX+4090顶配20999元!联想拯救者Y9000P 2023价格公布
- 环球最新:睡眠报告:山东人上床睡觉时间全国最早、广东人最能熬夜
- 焦点快看:埃安(埃)
- 天天观速讯丨放假5天!大学生已经在为五一做准备了
- 外出告别“板砖”电源!联想拯救者推出140W氮化镓适配器
- 4799元 创维推出新款G60 4K显示器:150Hz高刷 96W反向充电
- 即时焦点:2023载人航天飞行任务标识正式发布:中国神话神兽鲲元素
- 全国车企疯狂降价!吉利汽车CEO:吉利不打价格战
- 热讯:华硕发布新款Vivobook Go 14/15 OLED笔记本:高配酷睿i3-N305
- 天天观速讯丨真我GT Neo5 1TB存储网友用掉了500多G:直呼“真香”
- 全球视讯!Win12及DX13要来了?微软预告DirectX全新功能
- 通信能力是5G的10倍!全球17家运营商发布6G白皮书:预计2030商用
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
今日快讯:mysql集群搭建docker-compose方案
MySQL集群搭建大致有两种方式,一种是单主/多从的主从复制方式,另一种是使用Galera Cluster高可用解决方案。
(资料图片)
1、步骤
以下我们详细介绍一下单主/多从的主从复制方式:
- 确认服务器环境,采用官方支持的操作系统版本和MySQL版本,并保证主从服务器之间的网络连接能够正常通信。
- 安装MySQL服务器,可以选择二进制安装包、yum/apt安装包和源码编译方式进行安装。在进行安装时,需要配置MySQL的配置文件(my.cnf文件),以配置MySQL的操作参数和节点角色。
- 配置主从节点的角色,将其中一个MySQL服务器配置为主节点,其他服务器均配置为从节点。
- 配置主从复制参数,在主节点上创建复制账户,并将账户的权限限定在从节点上。
- 在从节点上配置主从关系,即将主节点的binlog日志传输到从节点,并将从节点的relay log传输回主节点,实现数据的实时复制。
- 测试主从复制的功能及性能,并对其进行调优。可以使用MySQL自带的性能测试工具及一些第三方性能测试工具对MySQL集群的读写性能、扩展能力等进行评估和优化。
2、集群搭建
下面是基于CentOS 7操作系统和MySQL 5.7版本的单主/多从的主从复制方式的具体步骤:
- 确认服务器环境
- 确认服务器之间的连接能够正常通信,可以使用ping命令测试连接;
- 确认MySQL 5.7版本的安装包已经下载并上传到服务器,建议使用官方提供的二进制安装包(.tar.gz格式)。
- 安装MySQL服务器
- 创建MySQL用户和用户组,建议使用root用户或具有sudo权限的用户进行安装;
- 解压MySQL安装包,将解压后的目录移动到/usr/local目录下;
新建my.cnf配置文件,将以下配置添加进去:
[mysqld]log-bin=mysql-binserver-id=1
其中log-bin配置指定主节点将binlog日志保存到mysql-bin文件中,server-id配置指定服务器的唯一标识,值越小优先级越高。
初始化MySQL数据目录,使用以下命令初始化:
#/usr/local/mysql/bin/mysqld —initialize —user=mysql —basedir=/usr/local/mysql —datadir=/usr/local/mysql/data
启动MySQL服务,使用以下命令启动:
#/usr/local/mysql/bin/mysqld_safe &
- 配置主从节点的角色
配置主节点,先登录到主节点的MySQL服务器上,使用以下命令创建复制账户,并限定该账户的权限仅限于从节点:
mysql> grant replication slave on *.* to "repl"@"%" identified by "password";
配置从节点,在从节点的my.cnf配置文件中添加如下内容:
[mysqld]server-id=2
这里的server-id需要设置为不同于主节点的唯一值,例如在此设置为2。
- 配置主从复制参数
在主节点上执行以下SQL语句,创建binlog日志文件:
mysql> flush logs;
获取主节点的binlog文件名和位置,执行以下SQL语句:
mysql> show master status;
记录下File和Position字段的值,将它们配置到从节点的my.cnf文件中:
[mysqld]relay-log=mysql-relay-binlog_slave_updates=1read_only=1
其中relay-log配置为从节点将relay log日志保存到mysql-relay-bin文件中,log_slave_updates配置为从节点将自己的binlog传给其他从节点,read_only配置为只读。
在从节点上执行以下SQL语句,建立主从关系:
CHANGE MASTER TOMASTER_HOST="your_master_ip_address",MASTER_USER="repl",MASTER_PASSWORD="password",MASTER_LOG_FILE="mysql-bin.000001",MASTER_LOG_POS=120;
其中MASTER_HOST指定主节点的IP地址,MASTER_USER和MASTER_PASSWORD为在主节点上之前创建的复制账户名和密码,MASTER_LOG_FILE和MASTER_LOG_POS为从节点的复制进度。
- 测试主从复制的功能及性能
- 使用MySQL自带的性能测试工具和第三方性能测试工具对MySQL集群的读写性能、扩展能力等进行评估和优化,例如AB测试、JMeter测试等。
3、docker-compose容器实现集群
使用Docker-compose实现MySQL集群搭建可以简化部署和维护流程,下面是具体步骤:
- 安装Docker和Docker-compose
- 可以从Docker官网上下载Docker CE和Docker-compose版本;
- 也可以使用操作系统自带的包管理器进行安装。
- 编写docker-compose.yml文件
version: "3"services: master: image: mysql container_name: mysql_master restart: always environment: MYSQL_ROOT_PASSWORD: master-password ports: - "3306:3306" volumes: - ./master-conf:/etc/mysql/conf.d - ./data:/var/lib/mysql networks: - mysql slave1: image: mysql container_name: mysql_slave1 restart: always environment: MYSQL_ROOT_PASSWORD: slave1-password MYSQL_MASTER_HOST: master MYSQL_MASTER_USER: root MYSQL_MASTER_PASSWORD: master-password ports: - "3307:3306" volumes: - ./slave1-conf:/etc/mysql/conf.d - ./data:/var/lib/mysql networks: - mysql slave2: image: mysql container_name: mysql_slave2 restart: always environment: MYSQL_ROOT_PASSWORD: slave2-password MYSQL_MASTER_HOST: master MYSQL_MASTER_USER: root MYSQL_MASTER_PASSWORD: master-password ports: - "3308:3306" volumes: - ./slave2-conf:/etc/mysql/conf.d - ./data:/var/lib/mysql networks: - mysqlnetworks: mysql:
其中,master服务指定了MySQL作为服务,命名为mysql_master,将宿主机的3306端口映射到容器内的3306端口,以便在宿主机上可以连接到MySQL服务;
slave1和slave2服务是从节点服务,与master服务不同的是,它们需要通过MYSQL_MASTER_HOST、MYSQL_MASTER_USER、MYSQL_MASTER_PASSWORD三个环境变量来实现主从关系,另外将本服务的容器名作为主服务器的连接地址;
volumes选项将容器内的MySQL配置和数据文件分别映射到宿主机上的./master-conf、./slave1-conf和./slave2-conf、./data目录中,以便容器删除和重新创建时不会丢失数据和配置文件;
注意:这里的MySQL配置文件应根据需要进行调整,例如:
[mysqld]log-bin=mysql-binserver-id=1# 必要时添加下列参数max_allowed_packet=256MBinnodb_buffer_pool_size=1GB
3. 启动MySQL集群
进入docker-compose.yml文件目录,运行以下命令启动MySQL集群服务:
docker-compose up -d
检查运行情况,使用以下命令查看MySQL容器的状态:
docker-compose ps
- 测试MySQL集群
在MySQL主服务器中创建测试数据库和表:
CREATE DATABASE test;use test;CREATE TABLE t (id int PRIMARY KEY);INSERT INTO t (id) valuues (1);
在MySQL从服务器中查询数据表:
use test;select * from t;
如果查询结果与主服务器相同,则说明从服务器已经与主服务器同步,集群搭建成功。
以上就是使用Docker-compose实现MySQL集群搭建的具体步骤。
如若转载,请注明出处:http://www.17codes.com/archives/341.html
关键词:
今日快讯:mysql集群搭建docker-compose方案
上海农商银行完成上海市政府柜台债发售
山姆会员店寿司致多人上吐下泻:官方拒绝三倍赔偿
天天新消息丨致敬葫芦娃?保时捷911 Carrera GTS泰国特别版官图发布
环球最资讯丨14.5英寸超大屏+天玑9000!联想Y900平板正式发布:4999元起
天天观点:13代酷睿+RTX 40!联想拯救者Y7000P 2023电竞本发布:屏幕大升级
13900HX+4090顶配20999元!联想拯救者Y9000P 2023价格公布
环球最新:睡眠报告:山东人上床睡觉时间全国最早、广东人最能熬夜
焦点快看:埃安(埃)
数据库系统
世界看点:day08-2-Thymeleaf
世界快看:使用OpenCVSharp和NAudio库在C#中录制带有声音的视频并保存下来的代码
焦点快报!债市日报:3月21日
天天观速讯丨放假5天!大学生已经在为五一做准备了
外出告别“板砖”电源!联想拯救者推出140W氮化镓适配器
4799元 创维推出新款G60 4K显示器:150Hz高刷 96W反向充电
即时焦点:2023载人航天飞行任务标识正式发布:中国神话神兽鲲元素
全国车企疯狂降价!吉利汽车CEO:吉利不打价格战
每日消息!微服务与rpc/grpc
全球观热点:第132篇:npm第一次使用自己的包(package-lock.json、package.json文件作用说明)
精彩看点:【Visual Leak Detector】在 QT 中使用 VLD(方式一)
热讯:华硕发布新款Vivobook Go 14/15 OLED笔记本:高配酷睿i3-N305
天天观速讯丨真我GT Neo5 1TB存储网友用掉了500多G:直呼“真香”
全球视讯!Win12及DX13要来了?微软预告DirectX全新功能
通信能力是5G的10倍!全球17家运营商发布6G白皮书:预计2030商用
熬夜伤不起!警惕睡眠质量受电子设备影响
记录--前端加载超大图片(100M以上)实现秒开解决方案
关于“堆”题的总体思路
焦点速讯:地表最强AI,GPT-4专治各种不服
个人交340单位交680退休能拿多少?主要看个人缴纳的部分
焦点速讯:匹克态极速浪跑鞋99元抄底:门店299元
天天热文:女子公园租电动车3个多小时扣466元 运营方:上海价格都是这
焦点滚动:别羡慕了!经常不分场合秒睡可能是种病:得看医生
全球观速讯丨宁德时代麒麟电池已量产 同体积比特斯拉电池电量高13%
世界新消息丨省的都是钱 长安汽车推“百亿补贴”:不到11万可买CS75 PLUS
【Visual Leak Detector】安装 VLD
世界速递!三主摄时代来了!OPPO Find X6 Pro大漠银月图赏
全球看点:49dB降噪行业第一!OPPO Enco Free3图赏
1949元 ROG魔方幻“月曜白”路由器今晚开售:三频万兆速率
今热点:微软Bing上线在线绘图功能:文字生成图片 仅支持英文
天天快资讯:安全性远超燃油车!特斯拉发布调查报告:是美国平均水平7.4倍
环球今头条!DVWA-XSS(Reflected)
环球观焦点:关于基于AWS-Cli的方式对EC2及AMI资源批量添加或者删除tag的方法
每日观点:为什么Tomcat架构要这么设计?这篇文章告诉你答案!
全球微动态丨记录监控摄像头的接入过程及web端播放
全球快资讯丨narak靶机
当前快播:新农股份: 2022年度业绩快报
环球观天下!OPPO Find X6 Pro搭载三星E6屏:亮度高达2500nit、支持Pro XDR显示
焦点滚动:用到安卓17没问题!OPPO宣布Find X系列将支持4次大版本更新
449元-6999元!OPPO Find X6发布会四大新品一图看懂
全球速递!报告:2022年中国每四辆新车就有一辆电动车 比亚迪无敌
全球焦点!为什么不建议用redis做消息队列
世界今亮点!【数位DP】计数问题
前端设计模式——状态模式
每日讯息!关于 Vue 列表渲染 key 绑定 index 的性能问题
每日观察!黄金时间·千海金:避险情绪推升金价 但本周的美联储议息会议依然关键
环球观点:杜绝虚标!哈趣投影率先启用中国CVIA亮度标准:成单片式LCD领头羊
OPPO Find N2系列赢麻了!连续三个月折叠屏销量第一
天天速看:自动洗烘拖布 石头自清洁扫拖机器人P10图赏
道奇纯燃油谢幕之作!挑战者SRT恶魔170发布:V8机械增压马力超千匹
简单讲透Mac环境下多版本python的环境变量设置,仅对小白生效
视点!"error LNK2019: 无法解析的外部符号"原因分析
今头条!IDEA Rebuild项目错误:Information:java: java.lang.AssertionError: Value of x -1
对斗破苍穹进行python文本分析
实时焦点:VsCode 常用好用插件/配置+开发Vue 必装的插件
环球简讯:爵士力克国王将湖人挤出附加赛区 迷失盐湖城小萨准三双数据难掩低迷状态
入睡妙招!研究表明穿袜子睡觉更助眠
全球热消息:AMD Zen4霸气!移动版12核心解锁130W 直追170W桌面12核心
"周杰伦演唱会门票"登顶微博热搜 14万张秒售罄
dnf机械牛和悲鸣图在哪里?DNF机械牛和悲鸣的门票分别是什么?
雨过天晴一键还原怎么用?怎么删除雨过天晴一键还原?
OA对话框打不开是怎么回事?OA对话框怎么变成普通对话框?
今日最新!脚本编写的一个通用框架
天天速讯:编写高质量c#代码的20个建议
面试常考:C#用两个线程交替打印1-100的五种方法
全球新资讯:Paramiko_Linux
【全球独家】跟着字节AB工具DataTester,5步开启一个实验
英雄联盟自动关闭是什么意思?英雄联盟自动关闭怎么解决?
冒险岛的时空裂缝是什么?冒险岛怎么提升面板?
全球热推荐:今天春分白昼长了!全国春日地图出炉 看看春天到哪了
天天热议:汽车界“海底捞服务”!蔚来2023无忧服务发布:11600元/年
世界聚焦:重庆不再实行旧车置换:直接给予新车补贴 总计达3000万
世界报道:跨界做智能手表 比亚迪回应:消息属实 4月上新
对标《原神》!二次元开放世界游戏《鸣潮》开启测试招募
热点!如果设备不支持vulkan,就用swiftshader,否则就加载系统的vulkan的正确姿势(让程序能够智能的在vulkan-1.dll和libvk_s
【全球快播报】springboot使用easyExcel导出Excel表格以及LocalDateTime时间类型转换问题
《前端serverless 面向全栈的无服务器架构实战》读书笔记
每日视点!海关总署:2月下旬以来我国出口用箱量持续增长
国产纯电跑车前途K50美国秽土转生:换了名称、LOGO还没变
全球最新:40万级领先行业两代 赵长江:腾势N7月销量将轻松破万 抢夺BBA用户
【全球速看料】沙县小吃旗舰店包间最低消费300元 网友:吃的完吗?
全球头条:英国小镇被巨型老鼠入侵:像猫一样大 悬崖都要被挖塌了
OpenGL 图像 lookup 色彩调整
天天时讯:剑指 Offer 07. 重建二叉树(java解题)
为什么Redis不直接使用C语言的字符串?看完直接吊打面试官!
天天观天下!广东人睡觉时间全国最晚:“打工人”平均睡眠时长7.5小时
一根USB线就能偷走韩系车!现代、起亚已开始免费送车主方向盘锁
今日关注:再不发力就晚了!新一代奥迪Q5效果图曝光:内外大变革
当前时讯:沙尘暴黄色预警:北方超10省将迎来大范围沙尘天气
环球热点评!昔日巨头彻底退场!爱普生宣布所有相机明年终止官方服务