十五天MySQL学习计划(运维篇-完结)读写分离-第十五天

news2025/1/21 18:51:17

十五天MySQL学习计划(运维篇-完结)读写分离-第十五天

读写分离

1.读写分离

​ 读写分离,简单的说是把对数据库的读和写操作分开,以对应不同的数据库服务器。主服务器提供写操作,从数据库提供读操作,这样能有效的减轻单台数据库的压力。

​ 通过mycat即可轻易实现上述功能,不仅可以支持mysql,也可以支持oracle和sql server。

请添加图片描述

2.一主一从

​ MySQL的主从复制,是基于二进制日志实现的。

请添加图片描述

3 .一主一从读写分离

​ mycat控制后台数据库的读写分离和负载均衡由schema.xml文件datahost标签的balance属性控制。

配置1


请添加图片描述

配置2

请添加图片描述

参数值含义
0不开启读写分离机制,所有读操作都发送到当前可用的writehost上
1全部的readhost与备用的writehost都参与select语句的负载均衡(主要针对于双主双从模式)
2所有的读写操作都随机在writehost,readhost上分发
3所有的读请求随机分发到writehost对应的readhost上执行,writehost不负担读压力

4.双主双从

​ 一个主机master用于处理所有写请求,它的从机slave1和另一台主机maste2还有它的从机slave2负责所有的主请求。当master1主机宕机后,master2主机负责写请求,master1,master2互为备机,架构图如下:

请添加图片描述

请添加图片描述

1.主库配置-第一台主库

​ 1.修改配置文件/etc/my.cnf

#mysql服务ID,保证整个集群环境中唯一
server-id=1
#指定同步的数据库
binlog-do-db=db01
binlog-do-db=db02
binlog-do-db=db03
#在作为数据库的时候,有写入操作也要更新二进制日志文件
log-slave-updates

​ 2.重启MySQL服务器

systemctl restart mysqld
2.主库配置第二台

​ 1.修改配置文件/etc/my.cnf

#mysql服务ID,保证整个集群环境中唯一
server-id=3
#指定同步的数据库
binlog-do-db=db01
binlog-do-db=db02
binlog-do-db=db03
#在作为数据库的时候,有写入操作也要更新二进制日志文件
log-slave-updates

​ 2.重启MySQL服务器

systemctl restart mysqld
3.两台主服务器都需要配置

1.两台主库创建账户并授权(8.0)

#创建授权用户,并设置密码,该用户可在任意主机连接该MySQL服务
create user 'itcast'@'%' identified with mysql_native_password by '1234.Com';
#为itcat用户分配主从复制权限
grant replication slave on *.* to 'itcast'@'%';

2.通过指令,查看两台主库的二进制日志名字和坐标位置

show master status;
4.从服务器配置(两台)

1.修改配置文件/etc/my.cnf

#mysql服务ID,保证整个集群环境中唯一
#第一台
server-id=2


#第四台
server-id=4

​ 2.重启MySQL服务器

systemctl restart mysqld

​ 3.两台从库配置关联主库

请添加图片描述

change master to master_host='xxx',master_user='xxx',master_password='xxx',master_log_file='xxx',master_log_pos=xxx;

需要注意slave1对应的是master1,slave2对应的是master2.

​ 启动两台从库主从复制,查看从库状态

start slave;
show slave status\G
5.两台主服务器相互做主从

master2复制master1,master1复制master2

change master to master_host='xxx',master_user='xxx',master_password='xxx',master_log_file='xxx',master_log_pos=xxx;

启动查看两台主服务器的主从复制

start slave;
show slave status\G
6.测试

分别在两台主库master1,master2上执行DDL,DML语句,查看涉及到数据库服务器的数据同步情况。

5.双主双从读写分离

​ mycat控制后台数据库的读写分离和负载均衡由schema.xml文件datahost标签的balance属性控制,通过writeType及switchType来完成失败自动切换的。、

请添加图片描述

balance="1"
	代表全部的readHost与stand by writeHost参与select语句的负载均衡,简单的说,当双主双从模式(M1-》S1,M2-》S2.并且M1与M2互为主备),正常情况下,M2,S1,S2都参与select语句的负载均衡;
write Type
	0:写操作都转发到第1台writeHost,writeHost1挂了,会切换到writeHost2上;
	1:所有操作都随机的发送到配置的writeHost上;
switchType
	-1:不自动切换
	1:自动切换

测试

​ 登录mycat,测试查询及更新操作,判定是否能够进行读写分离,以及读写分离的策略是否正确。

​ 当主库挂掉一个之后,是否能够自动切换。

6.总结

1.介绍

​ 读写分离是为了降低单台服务器的访问压力,写走主库,读走从库。

2.一主一从

​ MySQL主从复制是基于二进制日志binlog实现的。master,salve

3.一主一从读写分离

	<writehost> 	<readhost/> <writeHost>,balance属性

4.双主双从

​ 两台主库,相互复制,互为主备,增强MySQL的可用性

5.双主双从读写分离

	<writehost> 	<readhost/> <writeHost>,balance属性 writetype switchType

salve

3.一主一从读写分离

	<writehost> 	<readhost/> <writeHost>,balance属性

4.双主双从

​ 两台主库,相互复制,互为主备,增强MySQL的可用性

5.双主双从读写分离

	<writehost> 	<readhost/> <writeHost>,balance属性 writetype switchType

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

linux0.12-8-10-sys.c

[369页] 1、 这个文件需要配合其他文件一起看才能明白函数的作用&#xff1b; 2、 进程ID和进程组ID是描述进程之间的关系&#xff0c;与用户ID和组ID等其他无关系&#xff1b; 3、 用户ID和组ID和文件&#xff08;程序&#xff09;属性有关&#xff0c;当进程执行&#xff08;…

首发!车联网前装搭载率破70%,本土供应商抢下半壁江山

对于汽车智能化来说&#xff0c;网联化是相辅相成的角色&#xff0c;从传统3G、4G到5G的进化&#xff0c;提升座舱信息娱乐的体验&#xff1b;到C-V2X落地为辅助驾驶及自动驾驶提供冗余感知。 同时&#xff0c;车联网的普及&#xff0c;也进一步驱动互联网生态内容、服务以及类…

【AUTOSAR】【以太网】SoAd

目录 一、概述 二、限制与约束 三、依赖模块 5.1 TCPIP模块 5.2 通用上层 四、功能描述 4.1 套接字连接 4.2 PDU传输 4.3 PDU Header option 4.4 PDU 接收 4.5 最佳匹配算法 4.6 消息接受策略 4.7 TP PDU取消 4.8 路由组 4.9 PDU fan-out 五、API接口 5.1 API…

SpringBoot实现登录拦截的实现

对于管理系统或其他需要用户登录的系统&#xff0c;登录验证都是必不可少的环节&#xff0c;在SpringBoot开发的项目中&#xff0c;通过实现拦截器来实现用户登录拦截并验证。 1、SpringBoot实现登录拦截的原理 SpringBoot通过实现HandlerInterceptor接口实现拦截器&#xff…

如何完成GNSS接收器的定时校准

背景 GNSS以其提供亚米级精度定位的能力而闻名。然而鲜为人知的是&#xff0c;GNSS还提供了一种非常便捷的方法&#xff0c;可以通过GNSS接收器获得纳秒&#xff08;甚至亚纳秒&#xff09;的定时精度。事实上&#xff0c;除了三个空间维度之外&#xff0c;GNSS还使用户能够计…

iPhone照片导入电脑的图文教程,批量上传的3个方法!

案例&#xff1a;苹果手机照片怎么批量上传到电脑&#xff1f; 【友友们&#xff0c;手机照片太多&#xff0c;占用了我很多内存。想要把照片上传批量上传到电脑上进行保存&#xff0c;该怎么做&#xff1f;】 随着iPhone的普及和摄影功能的提升&#xff0c;越来越多的用户希望…

Rave Reports v2022 for Delphi 7-11

Rave Reports v2022 for Delphi 7-11 Rave Reports是来自Nevrona的一组公司&#xff0c;从Delphi和CBuilder中的数据库中报告进度。您可以使用专用工具轻松设计自己的报告。如果您需要将报告更改为您的用户&#xff0c;例如要发布的订单报告&#xff0c;此工具也提供了此功能&a…

Java | 一分钟掌握定时任务 | 3 - 单机定时之Timer

作者&#xff1a;Mars酱 声明&#xff1a;本文章由Mars酱原创&#xff0c;部分内容来源于网络&#xff0c;如有疑问请联系本人。 转载&#xff1a;欢迎转载&#xff0c;转载前先请联系我&#xff01; 介绍 这个是个JDK远古时代的api了&#xff0c;据考证&#xff0c;可以追溯到…

CSS小技巧之圆形虚线边框

虚线相信大家日常都用的比较多&#xff0c;常见的用法就是使用 border-style 控制不同的样式&#xff0c;比如设置如下边框代码&#xff1a; border-style: dotted dashed solid double;这将设置顶部的边框样式为点状&#xff0c;右边的边框样式为虚线&#xff0c;底部的边框样…

视频采集到录制 - 采集到显示碰到一些难点

项目中用到相机后端处理&#xff0c;走了一些弯路&#xff0c;也遇到不少问题&#xff08;解决了不少问题&#xff09;&#xff0c;特意写下本文记录下当时点点滴滴。 讲一下背景&#xff0c;公司自研相机&#xff0c;用于一些高端场合&#xff0c;因此对后端处理也非常讲究 …

网络基本知识分享

目录 1.IP地址 2.端口号 3.协议 4.协议分层 5.Tcp/Ip五层网络模型 5.1 应用层 5.2 传输层 5.3 网络层 5.4 数据链路层 5.5 物理层 6.封装和分用 6.1 封装 6.1.1 应用层拿到数据 6.1.2 向下传递给传输层 6.1.3 继续向下传递给网络层 6.1.4 继续向下传递给数据链…

【自制视频课程】C++OpnecV基础35讲——第一章 前言

为什么要学习OpenCV&#xff1f; 首先&#xff0c;opencv是一个广泛使用的计算机视觉库&#xff0c;它提供了丰富的图像处理和计算机视觉算法&#xff0c;可以帮助我们快速地开发出高质量的图像处理应用程序&#xff1b; 其次&#xff0c;opencv是一个开源库&#xff0c;可以免…

Spark大数据处理讲课笔记4.3 Spark SQL数据源 - Parquet文件

文章目录 零、本讲学习目标一、Parquet概述二、读取和写入Parquet的方法&#xff08;一&#xff09;利用parquet()方法读取parquet文件1、读取parquet文件2、显示数据帧内容 &#xff08;二&#xff09;利用parquet()方法写入parquet文件1、写入parquet文件2、查看生成的parque…

零入门kubernetes网络实战-32->基于路由技术+brigde+veth pair形成的跨主机通信方案

《零入门kubernetes网络实战》视频专栏地址 https://www.ixigua.com/7193641905282875942 本篇文章视频地址(稍后上传) 本文主要使用的技术是 路由技术Linux虚拟网桥虚拟网络设备veth pair来实现跨主机通信 该方案是flannel网络方案中的host-gw网络模型的基础。 1、总结 本…

化制为智,驭数前行 | 如何把握油气装备领域智能制造的未来?

01「智」赋未来&#xff0c;油燃而升 2015年&#xff0c;我国提出了“中国制造2025”规划&#xff0c;把智能制造作为两化深度融合的主攻方向&#xff0c;智能制造产业链所蕴藏的巨大投资机会将逐渐被市场挖掘。作为国家战略的基础&#xff0c;油气工程装备&#xff0c;特别是…

C++ 基础STL-list容器

STL-list 容器&#xff0c;又称双向链表容器&#xff0c;即该容器的底层是以双向链表的形式实现的。这意味着&#xff0c;list 容器中的元素可以分散存储在内存空间里&#xff0c;而不是必须存储在一整块连续的内存空间中。 链表的优点&#xff1a;可以对任意位置进行快速插入和…

【触觉智能分享】RK3568+Debian系统如何旋转屏幕显示方向

大家在购买开发板后&#xff0c;默认开机进入桌面屏幕显示方向是竖屏&#xff0c;有些用户想修改为横屏显示&#xff0c;本文就用IDO-EVB3568为例&#xff0c;用Debian系统演示如何旋转屏幕显示方向&#xff0c;此方法适用于所有RK356X系列产品。 IDO-EVB3568开发板拥有四核A5…

【数据结构】--- 几分钟走进栈和队列(详解-上)

文章目录 前言&#x1f31f;一、栈&#x1f30f;1.1栈的概念及结构&#xff1a;&#x1f30f;1.2实现栈的两种方式&#xff1a; &#x1f31f;二、栈实现(数组栈)&#x1f30f;2.1结构&#xff1a;&#x1f30f;2.2初始化&#xff1a;&#x1f4ab;2.2.1第一种代码&#xff1a;…

Direct3D 12——纹理——纹理贴图的作用

法线贴图 在不增加三角形的情况下增加表面细节 任何一个像素它的法线都做一个扰动&#xff0c;通过定义不同的高度和临近位置的高度差重新计算法线 纹理定义的是任何一个点&#xff0c;它的相对的高度的移动&#xff0c;通过高度的变化改变法线 原曲面法向量n ( p) (0,1) p点…

代码随想录 LeetCode链表篇 Java

文章目录 &#xff08;简单&#xff09;203. 移除链表元素&#xff08;中等&#xff09;707. 设计链表&#xff08;简单&#xff09;206. 反转链表&#xff08;中等&#xff09;24. 两两交换链表中的节点&#xff08;中等&#xff09;19. 删除链表的倒数第 N 个结点&#xff08…