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

MySQL异步复制之GTID学习笔记

第一部分GTID概述1.1 背景与概念背景MySQL任何复制方式都是基于binlog方式进行的。从MySQL 5.6开始增加了GTIDGlobal Transaction ID全局事务ID特性作为传统基于二进制日志位置复制的替代方案。GTID的定义GTID是一个全局唯一的事务标识符用于标识在MySQL服务器上执行的每个事务。在基于GTID的复制中主库上提交的每个事务都会分配一个唯一的GTID从库使用这些GTID来跟踪哪些事务已经被应用。1.2 传统复制的局限性在基于位置的复制中需要手动指定MASTER_LOG_FILE和MASTER_LOG_POS来确定复制的起点。这种方式存在以下问题容易出错需要准确记录二进制日志文件名和位置难以维护当主库发生故障切换时需要重新确定复制位置不够直观无法直接知道哪些事务已经被复制1.3 GTID的优势简化复制管理不再需要指定二进制日志文件名和位置自动定位从库可以自动找到正确的复制起点更好的一致性确保主从数据的一致性更容易的故障切换主库故障时可以更容易地切换到新的主库更清晰的复制状态可以清楚地知道哪些事务已经被复制第二部分GTID的格式与存储2.1 单个GTID的格式GTID由两部分组成源服务器的UUID和事务序列号。格式UUID:transaction_id例如3E11FA47-71CA-11E1-9E33-C80AA9429562:23其中3E11FA47-71CA-11E1-9E33-C80AA9429562是源服务器的UUID23是该服务器上执行的第23个事务2.2 GTID集一个GTID集表示一组连续的事务。例如3E11FA47-71CA-11E1-9E33-C80AA9429562:1-5表示UUID为3E11FA47-71CA-11E1-9E33-C80AA9429562的服务器上执行的第1到第5个事务。多个不连续的范围可以用逗号分隔3E11FA47-71CA-11E1-9E33-C80AA9429562:1-5:7-102.3 mysql.gtid_executed表从MySQL 5.7开始引入了mysql.gtid_executed表来存储已经执行的GTID信息。这个表的作用是记录服务器上执行的所有GTID支持在没有二进制日志的情况下进行复制提供更可靠的GTID持久化机制第三部分GTID生命周期3.1 典型事务的GTID生命周期事务在主库上开始执行事务提交时系统分配一个GTIDGTID和事务一起写入二进制日志从库的I/O线程读取二进制日志将GTID和事务写入中继日志从库的SQL线程执行中继日志中的事务并将GTID记录到自己的gtid_executed集合中3.2 GTID分配GTID的分配有两种方式自动生成当gtid_next设置为AUTOMATIC时系统自动生成GTID手动指定可以通过设置gtid_next变量来手动指定GTID3.3 gtid_next系统变量gtid_next变量控制下一个事务使用的GTIDAUTOMATIC系统自动生成GTID默认值UUID:NUMBER手动指定GTIDANONYMOUS不使用GTID3.4 gtid_purged系统变量gtid_purged表示已经被清除的GTID集合。当二进制日志被清除时对应的GTID会被添加到gtid_purged中。第四部分GTID自动定位4.1 自动定位原理在基于GTID的复制中从库连接到主库时会发送自己已经执行的GTID集合gtid_executed。主库根据这个集合确定从哪个事务开始发送二进制日志。这个过程完全自动化不需要手动指定二进制日志文件名和位置。4.2 复制启动使用GTID复制时通过设置MASTER_AUTO_POSITION1来启用自动定位CHANGE MASTER TO MASTER

相关文章:

MySQL异步复制之GTID学习笔记

第一部分:GTID概述1.1 背景与概念背景:MySQL任何复制方式都是基于binlog方式进行的。从MySQL 5.6开始增加了GTID(Global Transaction ID,全局事务ID)特性,作为传统基于二进制日志位置复制的替代方案。GTID的…...

AI教材生成新趋势:低查重率,快速编写50万字专业教材不是梦!

整理教材中的知识点确实是一项“精细活”,关键在于如何实现平衡与连接!往往有两大难题需要解决:一方面是担心关键知识点的遗漏,另一方面则是难以掌握合适的难度层次——小学的教材常常写得深奥,学生难以理解&#xff1…...

保姆级图解:Linux DRM驱动里TTM内存管理到底是怎么玩的?从申请到缺页全流程拆解

从零拆解Linux DRM驱动中的TTM内存管理:一次显存申请的全景之旅 想象你是一名刚接触GPU驱动开发的工程师,面对"申请4MB显存"这样看似简单的需求,却被告知需要理解TTM、BO、resource等一系列抽象概念。这就像第一次走进陌生的城市&a…...

HTML转Figma设计:打破网页与设计稿的次元壁

HTML转Figma设计:打破网页与设计稿的次元壁 【免费下载链接】figma-html Convert any website to editable Figma designs 项目地址: https://gitcode.com/gh_mirrors/fi/figma-html 你是否曾经盯着一个精美的网站页面,心想"这设计真不错&am…...

音乐格式壁垒终结者:Unlock Music的技术突围与用户体验革命

音乐格式壁垒终结者:Unlock Music的技术突围与用户体验革命 【免费下载链接】unlock-music 在浏览器中解锁加密的音乐文件。原仓库: 1. https://github.com/unlock-music/unlock-music ;2. https://git.unlock-music.dev/um/web 项目地址: …...

Windows Defender Remover终极指南:如何安全彻底移除系统自带杀毒软件

Windows Defender Remover终极指南:如何安全彻底移除系统自带杀毒软件 【免费下载链接】windows-defender-remover A tool which is uses to remove Windows Defender in Windows 8.x, Windows 10 (every version) and Windows 11. 项目地址: https://gitcode.com…...

互联网大厂 Java 求职面试:从 Spring Boot 到微服务的技术探讨

互联网大厂 Java 求职面试:从 Spring Boot 到微服务的技术探讨 在这个互联网高速发展的时代,Java 开发者面临着越来越多的面试挑战。今天,我们将通过一个搞笑又严肃的面试场景,来看看燕双非是如何应对面试官的提问的。第一轮提问 …...

分子动力学模拟与机器学习势能:PyTorch与LAMMPS集成指南

1. 分子动力学模拟与机器学习势能概述分子动力学(Molecular Dynamics, MD)模拟是计算化学和材料科学领域的核心工具,它通过数值求解牛顿运动方程,模拟原子和分子在特定条件下的运动轨迹。这种方法能够揭示材料在微观尺度上的动态行…...

抖音视频采集的技术挑战与douyin-downloader架构深度解析

抖音视频采集的技术挑战与douyin-downloader架构深度解析 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback support. 抖音…...

2026年AI投资转向产业落地,产业集群成商业化“最短路径”

1. AI投资逻辑转向产业落地对投资人来说,投AI已经从关注模型、团队和故事,转为考察企业能否嵌进真实产业系统,能否借助一个区域的供应链、场景和数据完成落地;对企业而言,做AI也不再只是打造一个技术产品,而…...

从Windows到Mac:手把手教你远程/接力完成Unity iOS打包(无需Mac常驻)

从Windows到Mac:高效完成Unity iOS打包的跨平台工作流 对于习惯使用Windows进行Unity开发的团队来说,iOS打包环节往往成为工作流中的瓶颈。本文将分享一套经过实战验证的跨平台协作方案,帮助开发者在不依赖常驻Mac设备的情况下,实…...

告别龟速下载!用FFmpeg命令行高效抓取M3U8视频的3种实战姿势(附加速参数)

告别龟速下载!用FFmpeg命令行高效抓取M3U8视频的3种实战姿势(附加速参数) 在视频处理领域,FFmpeg堪称瑞士军刀般的存在。但很多开发者在使用它下载M3U8视频时,常常遇到速度慢、不稳定甚至中途失败的问题。这就像开着一…...

4-5月毕业季嘎嘎降AI主推:降重降AI一起做拆开买8元/千字省一半!

4-5 月对毕业生意味着什么?意味着论文进入终稿阶段答辩季期刊投稿高峰学位审核——降 AI 需求最集中也最焦虑的时间。 嘎嘎降AI 4-5 月主推的"降重降 AI 一起做"组合服务是针对这个时间窗口的针对性产品设计。这篇文章从毕业季的真实双重检测需求、组合服…...

霍尼韦尔57-0000-11 X 射线管 30KV,15W,铜靶

霍尼韦尔57-0000-11 X射线管参数解析霍尼韦尔(Honeywell)57-0000-11 型 X射线管是一种常见的工业用X射线源,专为无损检测、材料分析等应用设计。下面我将逐步解释您提供的参数(30kV、15W、铜靶),帮助您理解…...

用过嘎嘎降AI才发现:降AI双引擎跨AIGC平台一致性这样设计!

很多 2026 届毕业生今年都被同一件事困扰——论文一字没改,去年查 AI 率 18% 能过的,今年再查直接飙到 30% 以上。 不是论文变了,是知网的 AIGC 检测算法升级到 v2.13 了。这个升级直接淘汰了一批早期的低技术工具,也让"降A…...

大语言模型推理因果审计:方法与工程实践

1. 项目概述:LLM推理因果审计的必要性在金融风险评估和医疗诊断等高价值决策场景中,大语言模型(LLM)的推理过程正逐渐取代传统决策系统。然而,2026年MIT的一项研究表明,78%的部署案例存在"推理剧场&qu…...

基于Go的Discord机器人框架golembot:模块化设计与实战开发指南

1. 项目概述:一个基于Go的Discord机器人框架最近在折腾Discord社区管理工具,发现很多现成的机器人要么功能臃肿,要么定制性太差。直到我遇到了0xranx/golembot这个项目,它不是一个开箱即用的成品机器人,而是一个用Go语…...

3D部件分割新突破:SegviGen框架的生成式着色技术

1. 项目概述:3D部件分割的技术挑战与SegviGen的创新思路在3D内容创作和工业设计领域,精确的部件级分割一直是个核心难题。想象一下,当你需要将一个复杂的3D模型分解成可独立编辑的部件时——比如将汽车模型拆解为车门、轮胎、引擎盖等组件——…...

【Qt】Qt窗口(一)窗口概览,QMenuBar菜单栏的使用

小编个人主页详情<—请点击 小编个人gitee代码仓库<—请点击 Qt系列专栏<—请点击 倘若命中无此运&#xff0c;孤身亦可登昆仑&#xff0c;送给屏幕面前的读者朋友们和小编自己! 目录前言一、窗口概览二、菜单栏的使用菜单栏的介绍MainWindow窗口和Widget窗口的区别使…...

Creality Sermoon S1双模3D扫描仪开箱与核心技术解析

1. Creality Sermoon S1高端3D扫描仪开箱与规格解析作为一名长期关注3D打印和数字化建模的技术爱好者&#xff0c;最近我有幸拿到了Creality最新推出的Sermoon S1混合式3D扫描仪。这款设备集成了蓝光激光线和红外结构光两种扫描模式&#xff0c;官方标称精度高达0.02mm&#xf…...

08-5084-03 P/S 28V 输入 30 KV 输出总成

孙136-6506-88121. 产品概述型号含义&#xff1a;08-5084-03 是霍尼韦尔的特定部件编号。其中&#xff1a;“P/S” 通常表示“电源”&#xff08;Power Supply&#xff09;&#xff0c;表明这是一个电源转换设备。“28V 输入” 指输入电压为28伏特直流&#xff08;DC&#xff0…...

魔音漫创源码解析:架构总览:Electron 30 + React 18 + Zustand,构建桌面级影视生产工具

在 AI 影视创作领域&#xff0c;如何将散乱的剧本解析、角色建模、场景生成和视频渲染整合进一个流畅的生产线&#xff0c;是所有开发者面临的挑战。开源项目 魔音漫创 (moyin-creator) 给出了一份高分答卷。本文将深入其源码&#xff0c;解析其基于 Electron 30、React 18 和 …...

如何彻底解决彩虹岛韩服游戏转区乱码问题:Locale Remulator终极指南

如何彻底解决彩虹岛韩服游戏转区乱码问题&#xff1a;Locale Remulator终极指南 【免费下载链接】Locale_Remulator System Region and Language Simulator. 项目地址: https://gitcode.com/gh_mirrors/lo/Locale_Remulator 游戏转区乱码修复是许多玩家在体验海外游戏时…...

MyTV-Android:如何打造一款极致流畅的电视直播应用终极指南

MyTV-Android&#xff1a;如何打造一款极致流畅的电视直播应用终极指南 【免费下载链接】mytv-android 使用Android原生开发的电视直播软件 项目地址: https://gitcode.com/gh_mirrors/myt/mytv-android MyTV-Android是一款专为Android设备设计的开源电视直播软件&#…...

SpringBoot 2.x整合Quartz踩坑记:那个诡异的‘unnamed module’类转换异常,我是这样解决的

SpringBoot 2.x整合Quartz的类转换异常深度解析与实战解决方案 当你在SpringBoot项目中尝试整合Quartz进行任务调度时&#xff0c;是否遇到过这样的场景&#xff1a;代码编译一切正常&#xff0c;但运行时却突然抛出令人困惑的ClassCastException&#xff0c;错误信息中还出现了…...

【第6篇】OneAPI 聚合配置教程:一个窗口管所有模型,团队协作必备

系列导航:前五篇讲的都是"一对一"连接——一个客户端接一个平台。这篇讲的是"一对多"——用 OneAPI 把所有平台整合到一个入口,一套管理面板管所有 Key。 一、OneAPI 解决什么问题? 先说个真实场景。 假设你现在同时在用三个平台: DeepSeek(便宜,日…...

RK3588双网口+WiFi混合组网实战:从独立IP、网桥到带宽测试(iperf3验证)

RK3588混合组网实战&#xff1a;双网口与WiFi的三种高阶配置与性能验证 在嵌入式开发领域&#xff0c;RK3588凭借其强大的算力和丰富的接口资源&#xff0c;已成为构建智能网关、边缘计算设备的首选平台。当开发者需要实现多网络接口协同工作时&#xff0c;如何高效利用其双千兆…...

PHP 8.9 JIT调优黄金窗口期只剩47天!——PHP官方已标记jit.enable为“deprecated in 9.0”,速领迁移过渡方案

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;PHP 8.9 JIT编译器生产级调优——黄金窗口期的终极定义 PHP 8.9&#xff08;预发布版&#xff09;引入了增强型JIT编译器&#xff0c;其核心突破在于动态函数热路径识别精度提升42%&#xff0c;并支持…...

AI语音转录终极指南:faster-whisper-GUI完整使用教程

AI语音转录终极指南&#xff1a;faster-whisper-GUI完整使用教程 【免费下载链接】faster-whisper-GUI faster_whisper GUI with PySide6 项目地址: https://gitcode.com/gh_mirrors/fa/faster-whisper-GUI 想要快速将音频文件转换为文字吗&#xff1f;faster-whisper-G…...

别再手动调格式了!用EndNote X9搞定毕业论文参考文献,附赠3个高效管理分组技巧

告别文献格式噩梦&#xff1a;EndNote X9高效管理毕业论文参考文献全攻略 当你熬过无数个通宵&#xff0c;终于完成论文主体内容&#xff0c;却在最后阶段被参考文献格式折磨得痛不欲生时&#xff0c;那种绝望感恐怕每个研究生都深有体会。手动调整上百条文献的格式、反复核对作…...