当前位置: 首页 > news >正文

【MySQL】主从复制

https://www.bilibili.com/video/BV1Kr4y1i7ru/?p=161​
https://blog.csdn.net/qq_47959003/article/details/126058710

主从复制是指将数据库的DDL和DML操作通过二进制日志传到从库服务器中,然后在从库上对这些日志重新执行(也叫重做),从而使得从库和主库的数据保持同步。

MYSQL支持一台主库同时向多台从库进行复制,从库同时也可以作为其他从服务器的主库,实现链状复制。

优点:
主库出现问题,可以快速切换到从库提供服务;
实现读写分离,降低主库的访问压力;
可以在从库中执行备份,以避免备份期间影响主库服务;

原理

在这里插入图片描述

1、Master 主库在事务提交时,会把数据变更记录在二进制文件Binlog中。
2、从库读取数据库的二进制日志文件Binlog,写入到从库的中继日志Relay log。
3、slave重做中继日志中的事件,将改变反映它自己的数据。

搭建

开放指定的3306端口号:
firewall-cmd --zone=public --add-port=3306/tcp -permanent
firewall-cmd -reload关闭服务器的防火墙:
systemctl stop firewalld
systemctl disable firewalld

主库配置:
1、修改配置文件/etc/my.cnf

#mysql服务id,保证整个集群环境中唯一,取值范围:1-2^32-1,默认为1
server-id=1
#是否只读1代表只读,0代表读写
read-only=0
#忽略的数据,指不需要同步的数据库
#binlog-ignore-db=mysql
#指定同步的数据库
#binlog-do-db=db01

2、重复mysql服务:systemctl restart mysqld

3、登录mysql,创建远程连接的账号,并授予主从复制权限

#创建itcast用户,并设置密码,该用户可在任意主机连接该MySQL服务
CREATE USER 'itcast'@'%' IDENTIFIED WITH mysql_native_password BY 'Root@123456';
#为'itcast'@'%'用户分配主从复制权限
GRANT REPLICATION SLAVE ON *.* TO 'itcast'@'%';

4.通过指令,查看二进制日志坐标
show master status;
在这里插入图片描述
file:从哪个日志文件开始推送日志文件;
position:从哪个位置开始推送日志;
binlog_ignore_db:指定不需要同步的数据库;

从库配置:
1、修改配置文件/etc/my.cnf

#mysql服务id,保证整个集群环境中唯一,取值范围:1-2^32-1,默认为1
server-id=2
#是否只读1代表只读,0代表读写
read-only=1

2、重复mysql服务:systemctl restart mysqld

3.登录mysql,设置主库配置
CHANGE REPLICATION SOURCE TO SOURCE_HOST='xxx.xxx',SOURCE_USER='xxx',SOURCE_PASSWORD='xxx',SOURCE_LOG_FILE='xxx',SOURCE_LOG_POS=xxx;
上述是8.0.23中的语法。如果mysql是8.0.23之前的版本,执行如下SQL:
CHANGE MASTER TO MASTER_HOST='xxx.xxx.xxx.xxx',MASTER_USER='xxx',MASTER_PASSWORD='xxx',MASTER_LOG_FILE='xxx',MASTER_LOG_POS=xxx;

4、开启同步操作

start replica;   #8.0.22之后
start slave;     #8.0.22之前

5、查看主从同步状态

show replica status\G; #8.0.22之后
show slave status;   #8.0.22之前

相关文章:

【MySQL】主从复制

https://www.bilibili.com/video/BV1Kr4y1i7ru/?p161​ https://blog.csdn.net/qq_47959003/article/details/126058710 主从复制是指将数据库的DDL和DML操作通过二进制日志传到从库服务器中,然后在从库上对这些日志重新执行(也叫重做)&…...

vscode插件开发之 - menu配置

上一遍博客介绍了如何从0到1搭建vscode插件开发的base code,这遍博客将重点介绍如何配置menu。通常,开发一款插件,会将插件显示在VSCode 左侧的活动栏(Activity Bar),那么如何配置让插件显示在Activity Bar…...

自学C语言-9

** 第9章 函数 ** 大型程序一般会被分为若干个程序模块,每个模块实现一个特定功能 。C语言中,由函数实现子程序,由子程序实现模块功能。本章致力于使读者了解函数的概念,掌握函数的定义及调用方式;了解内部函数和外部…...

NVIDIA Triton系列01-应用概论

NVIDIA Triton系列01-应用概论 推理识别是人工智能最重要的落地应用,其他与深度学习相关的数据收集、标注、模型训练等工作,都是为了得到更好的最终推理性能与效果。 几乎每一种深度学习框架都能执行个别的推理工作,包括 Tensorflow、Pytorc…...

LIMS(实验室)信息管理系统源码、有哪些应用领域?采用C# ASP.NET dotnet 3.5 开发的一套实验室信息系统源码

LIMS(实验室)信息管理系统源码、有哪些应用领域?采用C# ASP.NET dotnet 3.5 开发的一套实验室信息系统源码 LIMS实验室信息管理系统,是一种基于计算机硬件和数据库技术,集多个功能模块为一体的信息管理系统。该系统主…...

Web前端进国企:挑战与机遇并存

Web前端进国企:挑战与机遇并存 随着互联网的飞速发展,Web前端技术已经成为企业信息化建设的重要组成部分。对于许多热衷于前端技术的年轻人来说,进入国企工作既是一种挑战,也是一种机遇。本文将从四个方面、五个方面、六个方面和…...

快速上手SpringBoot

黑马程序员Spring Boot2 文章目录 1、SpringBoot 入门程序开发1.1 创建一个新的项目 2、浅谈入门程序工作原理2.1 parent2.2 starter2.3 引导类2.4 内嵌tomcat 1、SpringBoot 入门程序开发 1.1 创建一个新的项目 file > new > project > empty Project 创建新模块&a…...

SQL 快速参考

SQL 快速参考 SQL(Structured Query Language)是一种用于管理关系数据库管理系统(RDBMS)的标准编程语言。它用于执行各种操作,如查询、更新、插入和删除数据库中的数据。本快速参考将提供SQL的基本语法和常用命令&…...

Cask ‘oraclexxx‘ is unavailable: No Cask with this name exists.

brew search oracle-jdk或brew search --cask oracle-jdk 原因:Homebrew官方仓库不再维护多个旧版本的OracleJDK 不推荐使用Homebrew环境安装JDK //指定版本安装 brew install --cask temurin17 //设置 JAVA_HOME 环境变量 //找到安装的JDK 版本的路径 /usr/lib…...

2024年武汉市中级、高级职称水测考试开卷方法分享

2024年武汉市(除开东湖高新区外)职称首次组织全员水测,先考水测后报名,水测报名在5月16号截止。 武汉市水测组织形式: 武汉市2024年专业技术职务水平能力测试分为笔试和面试,面试答辩有关事项另行通知&…...

计算机网络(6) ICMP协议

ICMP(Internet Control Message Protocol,互联网控制消息协议)是一种用于在IP网络中传递控制消息和错误报告的协议。ICMP是IP协议族的一部分,尽管它并不用于传输用户数据,但它在网络诊断和管理中起着关键作用。以下是关…...

FuTalk设计周刊-Vol.036

🔥AI漫谈 热点捕手 1、Stable Zero123:从单张图像生成高质量 3D 对象 Stable Zero123 可以生成物体的新颖视图,展示从各个角度对物体外观的 3D 理解,由于训练数据集和高程条件的改进,其质量比 Zero1-to-3 或 Zero123-XL 显著提高…...

Java——面向对象进阶(三)

前言: 抽象类,接口,内部类 文章目录 一、抽象类1.1 抽象方法1.2 抽象类1.3 抽象类的使用 二、 接口2.1 接口的定义和实现2.2 default 关键字2.3 实现接口时遇到的问题 三、内部类3.1 成员内部类3.2 静态内部类3.3 成员内部类3.4 匿名内部类&a…...

鸿蒙开发电话服务:【@ohos.telephony.observer (observer)】

observer 说明: 本模块首批接口从API version 6开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 导入模块 import observer from ohos.telephony.observerobserver.on(‘networkStateChange’) on(type: ‘networkStateChange’, ca…...

希亦、追觅、云鲸洗地机:究竟有何不同?选择哪款更合适

最近收到很多私信里,要求洗地机测评的呼声特别高,作为宠粉的测评博主,当然是马上安排起来,满足大家对想看洗地机的愿望。这次洗地机测评,我挑选了三款热门的品牌型号,并从多个维度对它们进行使用测评&#…...

代码随想录算法训练营第二十六天

题目:455. 分发饼干 贪心第一题 这里的局部最优就是大饼干喂给胃口大的,充分利用饼干尺寸喂饱一个,全局最优就是喂饱尽可能多的小孩。或者小饼干先喂饱小胃口 首先要对 g 和 s进行排序这样才能知道最大的胃口和最大的饼干然后进行遍历即可…...

[面试题]Java【并发】

[面试题]Java【基础】[面试题]Java【虚拟机】[面试题]Java【并发】[面试题]Java【集合】[面试题]MySQL 因为 Java 并发涉及到的内容会非常多,本面试题可能很难覆盖到所有的知识点,所以推荐 《Java并发编程的艺术》 。 Java 线程 线程 通知 等待 线…...

基于VSCode和MinGW-w64搭建LVGL模拟开发环境

目录 概述 1 运行环境 1.1 版本信息 1.2 软件安装 1.2.1 下载安装VS Code 1.2.1.1 下载软件 1.2.1.1 安装软件 1.2.2 下载安装MinGW-w64 1.2.2.1 下载软件 1.2.2.2 安装软件 1.2.3 下载安装SDL 1.2.3.1 下载软件 ​1.2.3.2 安装软件 1.2.4 下载安装CMake 1.2.4.…...

H5112B 降压恒流芯片12V24V36V48V60V72V100V 1.2ALED 调光无频闪光滑细腻

H5112B多功能LED恒流驱动器是一款具有良好性能与高度集成度的驱动芯片。以下是该产品的主要优点及应用领域的详细分析: 产品优点: 宽电压输入范围:H5112B支持5V至90V的宽电压输入范围,使其能够适应多种不同的电源环境&#xff0…...

真心建议大家冲一冲新兴领域,工资高前景好【大模型NLP开发篇】

前言 从ChatGPT到新近的GPT-4,GPT模型的发展表明,AI正在向着“类⼈化”⽅向迅速发展。 GPT-4具备深度阅读和识图能⼒,能够出⾊地通过专业考试并完成复杂指令,向⼈类引以为傲的“创造⼒”发起挑战。 现有的就业结构即将发⽣重⼤变…...

【技术实战】从ATE测试平台构建到电源芯片动态性能精准评估

1. ATE测试平台基础搭建指南 第一次接触ATE(Automatic Test Equipment)时,我和很多工程师一样被它的复杂配置吓到。但实际拆解后发现,搭建测试平台就像组装乐高积木,关键是要理解每个模块的作用。以我们测试Buck电源芯…...

【Proteus仿真】SRF04超声波阈值预警系统设计与LCD1602交互实现

1. SRF04超声波测距原理与硬件连接 SRF04超声波模块是工业测距的经典选择,它通过发射40kHz的声波并计算回波时间差来测量距离。在实际项目中,我发现很多初学者容易忽略声速受温度影响的问题——常温下声速约343m/s,但温度每升高1℃&#xff0…...

AI技能实战:本地部署大模型构建智能摘要工具

1. 项目概述:一个面向AI技能实践的开发者工具箱最近在GitHub上看到一个挺有意思的项目,叫inblog-inc/inblog-ai-skills。光看这个名字,你可能会觉得它又是一个关于“AI技能”的教程合集或者理论文档。但点进去之后,我发现它的定位…...

基于CRICKIT与CircuitPython的蛇形机器人避障项目实践

1. 项目概述与核心思路最近在捣鼓一个挺有意思的创客项目:用Adafruit的CRICKIT扩展板和CircuitPython,做一个能自己溜达、遇到障碍会躲开的蛇形机器人。这玩意儿听起来复杂,其实拆解开来,核心就是“感知-决策-执行”这个经典的控制…...

华硕游侠2-RX键盘多功能滚轮自定义M失效的解决方案

新买了一块游侠2 rx键盘,想着用自定义滚轮方便打开常用程序,但是发现在Armoury Crate中设置后不起作用,网上解决方案伤筋动骨,得不偿失,有一定风险。 经测试,自定义滚轮能正常执行宏定义,只是对…...

ASCII艺术乱码修复:ascii-fix工具解决终端编码兼容性问题

1. 项目概述:当字符艺术遇上编码乱码如果你经常在终端里折腾,或者喜欢用命令行工具处理文本,那你肯定遇到过这种情况:一个精心设计的ASCII艺术Logo,或者一个结构清晰的表格,在某个终端或编辑器里打开时&…...

OpenGL 调试方式

调试手段总览 API 级错误检查:glGetError、断言、包装宏调试输出机制:GL_KHR_debug、glDebugMessageCallback、QOpenGLDebugLogger着色器与程序调试:编译/链接日志、离线编译器、颜色编码调试渲染结果调试:FBO 检查、glReadPixels…...

ARM活动监控器(AMU)架构与AMCFGR寄存器详解

1. ARM活动监控器架构概览 在现代处理器设计中,性能监控单元(PMU)是系统调优和性能分析的关键组件。ARM架构中的活动监控器(Activity Monitors)作为PMU的核心部分,通过硬件计数器实现了对处理器行为的细粒度追踪。不同于传统的性能计数器,AMU…...

基于Keel-Kit的GitOps自动化:轻量级镜像更新与部署实践

1. 项目概述:一个为现代应用交付而生的“舵手工具箱”如果你和我一样,长期在云原生和微服务架构的浪潮里扑腾,那你一定对“应用交付”这四个字背后的复杂性深有体会。从代码提交到最终服务上线,中间横亘着构建、打包、部署、配置、…...

开源安全工具openclaw-killer:Nginx Lua环境威胁检测与防护实践

1. 项目概述:一个开源安全工具的诞生与使命最近在安全研究圈子里,一个名为openclaw-killer的项目引起了我的注意。这个由nkzprod维护的开源工具,名字就透着一股“杀气”——“OpenClaw杀手”。乍一看,你可能会以为这是某个游戏外挂…...