服务(第二十二篇)主从复制和读写分离

news2025/1/22 21:52:48

主从复制原理:

首先主节点会开启二进制日志,从节点会开启中继日志,从节点会开启io线程检测主节点是否有更新,如果更新了就会向主节点请求二进制事件,主会开启dump线程发送二进制事件,然后保存在从节点的中继日志中,然后从节点开启sql线程,进行获取和存放二进制事件,这就是主从复制。

复制类型:
基于语句复制、基于行复制、混合复制MIXED

复制类型的区别:
基于语句:会有数据丢失情况;传输效率高,减少延迟。表里有一百万条数据,一条sql更新了所有表,基于语句的复制仅需要发送一条sql,而基于行的复制需要发送一百万条更新记录
基于行:做查漏补缺用;安全性更好。

linux时间不准怎么办?
①使用ntp做服务时间同步
安装,修改配置文件,添加server ntp.aliyun.com iburst
②使用chrony做服务时间同步
安装,修改配置文件,添加server ntp.aliyun.com iburst

为什么主从复制有延迟?
①主服务器是多线程,从服务器的sql是单线程,从服务器可能跟不上处理速度
②主服务器负载
③从服务器负载
④网络延迟
⑤从服务器的硬件太差

怎么判断有没有网络延迟?
show slave status\G;查看seconds_behind_master 是否为0,正数是延迟,负数是bug

怎么解决延迟?
①从服务器放在局域网或者网络延迟低的
②更换硬件
③优化配置(双1等等)

主从数据不一致:

①如果业务上对数据要求不高,相差不大,忽略错误,继续同步。
②如果业务上对数据要求高,相差比较大,首先先停主服务器,然后完全备份在恢复到从服务器上,然后重启服务,继续同步。

实验:

①做时间同步:

主服务器的/etc/ntp.cnf里面添加配置,然后重启ntpd

 从服务器做时间同步:

也可以做个定时任务crontab -e

 

②配置主服务器:

1、做mysql的配置文件添加二进制日志,然后重启

 2、授权:

 3、查看日志文件和日志位置点

③配置从服务器:

1、 做mysql的配置文件添加二进制日志,然后重启

2、进入mysql,进行主从复制的信息校对,并开启服务

 3、查看从的状态,如果io线程和sql线程都是yes就成功了

 ④验证结果

在主服务器上做些简单的数据:

 去从的机子上查询:

 

一般 Slave_IO_Running: No 的可能性:
1、网络不通
2、my.cnf配置有问题(server-id重复)
3、密码、file文件名、pos偏移量不对
4、防火墙没有关闭

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

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

相关文章

假如面试官让你十分钟完成双向循环链表

💌 博客内容:假如面试官让你十分钟完成双向循环链表,多一秒都不行 😀 作  者:陈大大陈 🚀 个人简介:一个正在努力学技术的准前端,专注基础和实战分享 ,欢迎私信&…

大前端技能讲解:NodeJS、Npm、Es6、Webpack

文章目录 1. 基础概述2. Nodejs2.1 Nodejs 了解和快速入门2.2 Nodejs 实现 Httpserver 服务(实现请求响应)2.3 Nodejs 操作 MySQL 数据库 3. ES63.1 ES6 的概述3.2 ES6 的语法:let 和 const 命令3.3 ES6 的语法:模板字符串3.4 ES6…

基于SSM的在线电影购票系统设计与实现【附源码】

基于SSM的在线电影购票系统设计与实现 互联网的不断迅猛发展,每个行业都在寻找新的机会,都在从传统的人工方式向先进的信息化过度。随着人民生活水平的提高伴随的精神文化层次的享受,而现代互联网时代人们的重要精神消费之一是电影行业&…

NAS +AList实现云盘映射(本地硬盘扩容大法)

准备工具: 1)Alist的docker :xhofe/alist 2)RailDrive软件 安装: 1)安装alist的docker 注意一定要给读写权限,装载路径和我一样 端口一般和容器端口一致 环境变量 网络桥接就行 记得勾选自…

【Prompting】ChatGPT Prompt Engineering开发指南(1)

ChatGPT Prompt Engineering开发指南1 Prompting指南设置 提示原则策略1:使用分隔符清楚地指示输入的不同部分策略2:要求结构化输出策略3:让模型检查条件是否满足策略4: “Few-shot”提示 原则2:给模型时间“思考”策略1&#xff…

idea新建springboot项目并提交码云仓库

新建springboot项目 平常我们在使用联网方式新建springboot项目时总是会遇到连接失败等这种情况 IDEA创建项目,本质是从官网创建并下载项目,然后导入本地。 创建项目连接失败,一般是外国网站的原因导致连接超时,解决方式很简单&a…

C++linux高并发服务器项目实践 day11

Clinux高并发服务器项目实践 day11 线程同步互斥锁死锁读写锁读写锁相关操作函数 生产者消费者模型条件变量信号量 线程同步 线程的主要优势在于,能够通过全局变量来共享信息。不过,这种便捷的共享是有代价的:必须确保多个线程不会同时修改同一变量&…

LabVIEWCompactRIO 开发指南17 网络流

LabVIEWCompactRIO 开发指南17 网络流 网络流类似于队列函数,因为它们是基于FIFO的,但与队列函数不同的是,网络流具有网络作用域。它们是为通过以太网进行无损、高吞吐量数据通信而设计和优化的,并且它们具有增强的连接管理功能…

Springboot +Flowable,各种历史信息如何查询(三)

一.简介 正在执行的流程信息是保存在以 ACT_RU_ 为前缀的表中,执行完毕的流程信息则保存在以 ACT_HI_ 为前缀的表中,也就是流程历史信息表。 假设有一个流程,流程图如下: 当这个流程执行完毕后,以 ACT_RU_ 为前缀的…

学习新技术,争做新青年:请ChatGPT帮我写一篇计算机视觉分类算法论文

文章目录 学习新技术,争做新青年:你不会还不用 ChatGPT 吧?学习新技术请告诉我最好的图像分类模型是哪个请推荐最新的分类模型是哪个请详细介绍一下 Swin Transformer请给出Swin Transformer的论文链接请帮我分析一下Swin Transformer 的创新…

Java实现多线程操作多账户

前言 某公司一个面试题: 1.有二十个账户,每个账户初始余额10000元。 2.有十个转账线程,对二十个账户中的两个随机选取账户进行转账,转账额度100以内正整数随机数。 3.每个线程执行100次转账操作。 4.最后请打印出二十个账户的…

西门子PLC控制步进电机方法与接线(全)

一、步进驱动系统 步进驱动系统包含步进电动机和步进驱动器,前端由PLC发脉冲。 步进电机是将电脉冲信号转变为角位移或线位移以控制转子转动的开环控制电机(可以通过安装编码器形成闭环系统)。 它旋转是以固定的角度(步距角&…

ThinkPHP6的控制器定义及控制器初使用

ThinkPHP6的控制器定义及控制器初使用 控制器定义 控制器文件通常放在controller下面,类名和文件名保持大小写一致,并采用驼峰命名(首字母大写)。 如果要改变controller目录名,需要在route.php(config/route.php)配…

redis从零开始(1)----五种基本类型:string/hash

认识redis NoSQL Nosql not only sql,泛指非关系型数据库,与之相对的是RDBMS(Relational Database Management System),即关系型数据库 关系型数据库:列行,同一个表下数据的结构是一样的。 非关系型数据库&#xff…

原生js手动实现一个多级菜单效果(高度可过渡变化)

文章目录 学习链接效果图代码要点 学习链接 vue实现折叠展开收缩动画 - 自己的链接 elment-ui/plus不定高度容器收缩折叠动画组件 - 自己的链接 Vue transition 折叠类动画自动获取隐藏层高度以及手风琴效果实现 vue transition动画钩子- vue官网 vue transition 过渡动画…

vue基础入门

1. vue简介 1.1 什么是vue 官方概念:Vue(读音/vju:/,类似于view)是一套用于构建用户界面的前端框架 1.2 vue 的特性 vue 框架的特性,主要体现在如下两方面: ① 数据驱动视图 ② 双向数据绑定 数据驱动…

IMS补充业务场景介绍

呼叫保持流程 通话主动Hold的一方,发INVITE消息,媒体流从sendrecv变为sendonly,对方返回200 ok,媒体流从sendrecv变为recvonly,双方ACK后,进入呼叫保持状态,没有通话的RTP包。 大致流程如下 UE A发送INVITE(Sendonly)到网络 网络发送INVITE(Sendonly)到UE B UE发…

Linux文件属性修改

关于我们的文件属性如何修改呢? 我们今天来看一下 chmod chmod u(拥有者)/g(所属组)/o(其他人)(-)r/w/x(t) 文件名 就是这样,我们演示几个 我们想给拥有者去掉file1的读权限 我们file1的拥有者已经没有读权限了,那么我们还想加回来呢…

asp.net+C#基于web的旅游网站自驾游网站

(1)登录注册模块:输入账号密码,数据库进行验证,正确通过后,根据不同的账户信息,不同角色,获取不同的功能。 (2)自驾游模块:此模块可以分享自己自…

《计算机网络—自顶向下方法》 第五章Wireshark实验:UDP 协议分析

用户数据报(UDP)协议是运输层提供的一种最低限度的复用/分解服务,可以在网络层和正确的用户即进程间传输数据。UDP 是一种不提供不必要服务的轻量级运输协议,除了复用/分用功能和简单的差错检测之外,几乎就是 IP 协议了,也可以说它…