mysql一主两从读写分离搭建

搭建MySQL读写分离(一主一从) 目录#注意:MySQL读写分离是基于主从复制实现的一、MySQL读写分离实现类型 (一)基于程序代码内部实现1、select与insert进行路由分类2、一般由开发人员操作3、生产环境经常使用(二)基于中间代理层实现 1、MySQL-Proxy2、Amoeba (三)知识点补充 1、事务 2、事务通常需要满足四个属性:二、搭建MySQL读写分离(一)准备工作1、由于MySQL读写分离是基于主从复制实现的,所以首先搭建MySQL主从复制;详见http://t.cs 阅读详情

一、前言

搭建一主两从的架构是为了将数据库的读写操作分离开来,master数据库写数据,slave数据库查数据,以此来提升数据库的性能

主从工作流程

1.master节点接收到写入操作,执行该操作后会将该操作写入到binlog日志中

2.salve节点通过io线程同步master节点中的binlog日志,并且将同步的日志写入到relaylog日志中,master节点会通过log dump线程将binlog日志传输给slave的io线程

3.slave节点通过sql线程执行relaylog日志中的操作

通过以上的工作流程会发现主从同步是一个异步同步

此处使用了三台主机,主机配置信息如下表所示

名称

ip

master

10.1.60.80

slave1

10.1.60.114

slave2

10.1.60.115

二、配置

三台主机均关闭防火墙

systemctl stop firewalld

三台主机均关闭selinux

setenforce 0

三台主机均安装数据库,搭建过程参考我下面的博客

yum安装mysql 5.7_yum安装mysql5.7_Apex Predator的博客-优快云博客

三台主机均在数据库配置文件末尾加上以下配置,开启binlog

server_id=1    #三台主机不能配置相同的数字
log_bin=mysql_bin
binlog_format=mixed
max_binlog_size=1g
expire_logs_days=7

三台主机均重启数据库服务

systemctl restart mysqld

三台主机均查看binlog是否启动

mysql -uroot -p

show variables like 'log_%';

master数据库上创建slave数据库用于同步的账户

mysql -uroot -p

grant replication slave on *.* to 'test'@'%' identified by 'Qwe@1234'; #(replication slave是专门配置复制用户的权限)

flush privileges;

查看master数据库上的binlog文件与pos点(slave配置需要用到)

show master status;

配置两台slave数据库,开启同步功能,并设置只读模式

mysql -uroot -p

change master to

master_host='10.1.60.80',

master_user='test',

master_password='Qwe@1234',

master_log_file='mysql-bin.000001',

master_log_pos=589;

start slave;

set global read_only=1;

查看read_only状态

SELECT @@global.read_only;

查看两台slave数据库同步是否正常启动(slave_IO_Running和slave_SQL_Running状态都为yes)

show slave status\G

测试主从功能是否生效

master数据库创建数据

mysql -uroot -p

create database test;

use test;

create talbe student (

id int,

name varchar(20)

);

insert into student values(1,'xiaoming'),(2,'xiaohong'),(3,'xiaolin');

查看master数据库binlog日志状态

show master status;

查看slave数据库是否有同步生成test库与student表

mysql -uroot -p

show databases;

use test;

show tables;

select * from student;

查看slave库主从同步状态

show slave status\G

将三台主机地址转交给开发的时候,注明master主机只接收写请求,slave主机只接收读请求,以实现读写分离的操作(也可以通过配置一个中间件去代理区分读写请求,区分后将请求转发到与之相对应的主机上,可使用的中间件例如使用myproxy、mycat等)

MySQL8.0 主从部署(一主两从) 阅读详情

相关推荐

数据库一主双从,实现一个简单的主从切换~

一主多从,实现数据库高可用一、准备环境1.先做一主双从192.168.131.80配置:192.168.131.81配置:192.168.131.82配置:2.模拟A库故障,B库替换为主192.168.131.81配置:192.168.131.82配置:总结 一、准备环境 系统 主机ip 应用 centos7 192.168.131.80 A mariadb mariadb-server 主 centos7 192.168.131.81 B mariadb mariadb-serve

一个马马虎虎的程序员 1869

mysql部署一主两从

安装好mysql以后,需要搭建一下主从,这里以192.168.2.31-33这三台机器为例,介绍一下mysql主从的搭建(mysql安装可以参考我之前的文档)我这里由于是测试环境 ,mysql的密码就设置为123456(线上环境不建议)

qq_57052445的博客 2225

mysql读写分离--1.一主一从,主从复制

mysql -uroot -poldboy123</tmp/master_2021-12-19.sql ##如果有错,删除/tmp/master_2021-12-19.sql第一行.总结:主库数据通过binlog日志将变更同步到从库,从而保证主库和从库数据一致。mysql支持一台主库同时向多台从库进行复制,从库同时也可以作为其他从服务器的主库,实现链状复制。#登录mysql,设置从配置,配置主库信息,主库的密码和binlog起始位置,pos文件点。

2401_84008551的博客 1655

MySQL:一主两从架构(读写分离)

MySQL主从

qq_39198749的博客 3092

SpringBoot -读写分离(1) --MySQL一主多从环境搭建

主从原理 从数据库上的数据与主数据库保持一致,其实现过程为: 1:每当主数据库发生写操作时,主数据库将数据的修改记录到binlog文件中. 2:从数据库开辟一个IO线程,将主数据库上的binlog日志复制到自己的中继日志relaylog中. 3:从数据库开辟SQL线程,把本地relaylog文件中的更改事件重放,实现数据同步. 原理图为: 主从配置 (1) 准备工作 需要至少两台mysql服务器,且服务器均在同一局域...

zhou_jian_1314159的博客 648

mysql一主多从以及使用springboot aop进行读写分离的搭建的正确姿式

介绍 这是一篇高度集中火力的生产环境中的mysql5.7一主多从以及结合spring boot进行读写分离的最全文档。主末笔者还会给出一个完整的基于spring boot的使用aop特性做完整项目读写分离的全代码与演示。 本文涉及技术点如下: mysql5.7.30+版本 spring boot AOP haproxy keep alive 1.目标 mySQL层1主挂多从 安装3台mysql服务器,三台服务分布如下: mySQL master: 192.168.2.101 mySQ..

打造全国最全的AI Agent开发知识领域的博客 3213

Mysql主从数据库搭建(一主两从)

Mysql的主从复制中主要有三个线程: master(binlog dump thread)、slave(I/O thread 、SQL thread),Master一条线程和Slave中的两条线程。 master(binlog dump thread)主要负责Master库中有数据更新的时候,会按照binlog格式,将更新的事件类型写入到主库的 binlog文件中。并且,Master会创建log dump线程通知Slave主库中存在数据更新,这就是为什么主库的binlog日志一定要开启的原因

Toker.Zhou的博客 4707

CATIA二次开发CAA安装

安装资料在网盘里 Win7 64位 以下软件均已管理员身份运行: 1.安装vs2008->自定义安装->选择要安装的功能->Visual C+±>x64编译器和工具 1.2安装SP1 2.安装CATIA V5 R21->win7_XP->CATIA.P3.V5R21.Win64->setup.exe 2.1安装目录改为D盘 2.2环境目录位置默认 3.安装...

qq_39311458的博客 4632

MyCat搭建MySQL一主一从与双主双从读写分离

通过Mycat和MySQL的主从同步复制配合就可以搭建MySQL数据库的读写分离,这里以MyCat搭建MySQL一主一从与双主双从2种读写分离模式。

积跬步,至千里。 586

北航论文模板:解决XeLaTeX中Font shape'TU/SimSun(1)/b/n' undefined(font) using 'TU/SimSun(1)/m/n' instead

北航论文模板:解决XeLaTeX中Font shape ‘TU/SimSun(1)/b/n’ undefined(font) using ‘TU/SimSun(1)/m/n’ instead 问题 问题描述: 在使用北航论文模板时,产生了warning:Font shape 'TU/SimSun(1)/b/n' undefined(font) using 'TU/SimSun(1)/m/n' i...

qq_39560620的博客 1万+

Verilog HDL 100道面试题及参考答案

在 Verilog HDL 中,参数(parameter)和宏定义(define)都可用于定义常量,但它们存在诸多不同之处。参数(parameter)是模块内部的常量定义,具有局部性。它在模块内部起作用,不同模块可以有同名的参数,且值可以不同。参数通常用于定义模块的一些配置信息,例如数据位宽、延迟时间等。参数的定义和使用是在模块的作用域内进行的,通过参数传递可以方便地对模块进行配置。endmodule在上述代码中,WIDTH是一个参数,用于定义加法器的位宽。通过改变WIDTH。

大模型大数据攻城狮的专栏 1734

MyCat2搭建Mysql一主二从读写分离最佳实践

MyCat2搭建Mysql一主二从读写分离最佳实践

qq_45824141的博客 1136

Windows 下 Hermes Agent(爱马仕)安装全记录:从零到一的保姆级图文教程

本文主要介绍了Windows 下 Hermes Agent(爱马仕) 安装全记录:从零到一的保姆级图文教程,希望能对学习使用 Hermes Agent 的同学们有所帮助。 文章目录 1. 背景 2. 实战教程 2.1 步骤一 安装WSL环境 2.2 步骤二 安装Python环境 2.3 步骤三 安装Hermes Agent 2.4 步骤四 修正 API Key 错误 2.5 步骤五 配置多个模型 2.6 步骤六 启动Hermes Agent 3. 常见问题及解决方案 4. 总结

weixin_43178406的博客 14万+

【数据库】docker搭建mysql8一主两从节点,配置proxysql读写分离

重启I/O线程之后,从库会重新连接到主库,并注册为半同步的从库(如果是全新搭建的复制拓扑,可以忽略该步骤。当设置完用户名和密码后,ProxySQL将使用这些凭据建立与MySQL服务器的监控连接,并定期获取性能指标、查询统计和连接状态等信息。请注意,规则的顺序很重要,ProxySQL将按照规则列表的顺序逐条匹配,并在找到匹配项后停止匹配。表中配置用户信息,ProxySQL可以根据客户端的连接请求进行身份验证,并根据定义的权限规则控制对MySQL服务器的访问。master_host :Master的地址。

FixPng的博客 1863

在YOLO中扩充新类别并且不影响旧类的识别精度

让我们先从简单的部分开始:用我们的新类训练自定义 YOLOv8 模型。在本教程中,我们将向模型添加车牌类。我们将使用Roboflow 中的一个数据集。这个数据集有两个车牌类。在开始训练之前,我们还必须对库进行一些更改。为了节省时间,我还将本教程中我们将进行的更改转换为补丁该补丁包含多项更改,但大多数更改都用于指南的下一部分。if RANK!= -1:是的,我们将编写一个回调。我们希望将此自定义训练模型的头部与 COCO 预训练模型中的旧头部一起使用。

如果想成为中心,那么就到中心去吧。 1225

瑞芯微RK3588/RK3576平台采集BT1120(fpga)驱动调试记录

本文介绍了在RK3576/RK3588平台上采集FPGA传输的BT1120数据的方法。主要内容包括:1)硬件连接需确认管脚复用和图像格式(通常为uyvy_2x8);2)设备树配置要点,如I2C总线设置、BT1120模式指定等;3)驱动适配注意事项,包括时钟极性、分辨率格式等关键参数;4)测试方法,通过media-ctl和v4l2-ctl工具验证数据采集。文中特别指出RK3576和RK3588配置的通用性,并提供了常见问题的排查思路。

bingdund的博客 916

搭建MyCat2一主一从的MySQL读写分离

通过Mycat2与MySQL的主从同步复制配合就可以搭建MySQL数据库的读写分离,这里搭建MyCat2一主一从的MySQL读写分离。

积跬步,至千里。 3033

彻底解决tplink路由器无法访问部分https网站

彻底解决tplink无法访问部分https网站

renkai721的专栏 8764

mycat mysql 一主多从_Mycat分布式数据库架构解决方案--搭建MySQL读写分离环境--一主多从...

echo编辑整理,欢迎转载,转载请声明文章来源。欢迎添加echo微信(微信号:t2421499075)交流学习。 百战不败,依不自称常胜,百败不颓,依能奋力前行。——这才是真正的堪称强大!!!本文主要为了记录MySQL搭建读写分离的操作,是本人的操作纪实,并没有详细讲解其中的原理和操作设置,如果需要详细解释的,不建议阅读。环境准备:linux系统版本对应服务器地址数据库版本CentOS7192.1...

weixin_39811166的博客 507

STM32串口控制LED灯的亮灭

STM32中的串口控制LED灯的亮灭,分为两种方式,一种是直接发送数字0和1来控制灯的亮灭,另一种是通过发送字符串来控制。 我所使用的开发板主控芯片是STM32F401RET6,主频84MHz, 首先要进行串口的初始化: /* 函数功能:串口的初始化 函数名:Usart_Init 返回值:无 参数:u32 brr 备注: USART1_TXD->PA9 USART1_RXD->PA10 */ void Usart_Init(u32 brr) { float div; u16 div

博客 2万+

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

利用Docker搭建一套Mycat2+MySQL8一主一从、读写分离的最简单集群(保姆教程)

Mycat是一套布式数据库中间件(虚拟数据库类),它本身并不存储数据库。其原理中最重要的一个动词是“拦截”,它拦截了用户发送过来的 SQL 语句,首先对 SQL 语句做了一些特定的分析:如分片分析、路由分析、读写分离分析、 缓存分析等,然后将此 SQL 发往后端的真实数据库,并将返回的结果做适当的处理,最终再返回给用户。

tigerhhzz的博客 2916

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

Mycat整合mysql搭建读写分离(一主一从)

Mycat是一款优秀的数据库中间件,通过Mycat整合mysql,我们可以在主从复制的基础上搭建读写分离,如果主从复制尚未搭建好,可以参考上一篇文章MySQL搭建主从复制 1.准备一台主机,101.101.101.22, 2.下载mycat安装包(mycat需要java环境,若系统未安装JDK,需要先安装JDK,另外一般建议将mycat安装在/usr/local/下): wget http://d...

qq_42839741的博客 736

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

一主两从加Gaea实现读写分离

一主两从加Gaea实现mysql读写分离

xujun738的专栏 550

Mycat分布式数据库架构解决方案--搭建MySQL读写分离环境--一主多从

Mycat分布式数据库架构解决方案--搭建MySQL读写分离环境--一主多从

p15097962069的博客 82

docker搭建mysql读写分离、一主二从、并挂载数据、配置文件

搭建教程主库创建文件夹用户挂载先运行一个mysql服务(临时用一下)复制容器内的配置文件重命名文件停止并删除临时容器启动主库分别复制配置文件到从库从库运行从库1运行从库2修改主库挂载配置文件my.cnf,并保存退出重启服务使配置生效配置从库(1)my.cnf配置从库(2)my.cnf查看主库IP地址再次进入主库,并登录root账号执行指令```show master status;```分别进入从库并登录root账号执行指令1指令说明:master_host :Master库的地址,指的是容器的独立ip,可

Vick C的博客 1429

mysql集群搭建(一主一从、主从复制、读写分离)

mysql集群搭建(一主一从、主从复制、读写分离)

u014014014的博客 584
上一篇: yum安装mysql 5.7
下一篇: mysql binlog基础知识
Apex   Predator
博客等级 码龄6年 9371粉丝 289原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值