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

MySQL主从复制报错13117?别慌,手把手教你排查和修复UUID冲突(附Docker环境实战)

MySQL主从复制报错13117别慌手把手教你排查和修复UUID冲突附Docker环境实战当你在Docker环境中部署MySQL主从复制时突然遇到Fatal error: The replica I/O thread stops because source and replica have equal MySQL server UUIDs这样的报错是不是感觉一头雾水别担心这个错误其实很常见尤其是在使用容器化技术或克隆虚拟机时。本文将带你一步步排查和解决这个问题让你从慌乱到从容。1. 理解错误背后的原因MySQL主从复制依赖于每个实例拥有唯一的server_uuid来标识自己。这个UUID存储在数据目录下的auto.cnf文件中通常在MySQL首次启动时自动生成。但在以下场景中可能会出现UUID冲突Docker容器如果你通过复制数据卷或使用相同镜像启动多个容器而没有清理数据目录虚拟机克隆直接克隆已经配置好MySQL的虚拟机而没有重新生成UUID手动备份恢复将主库的数据目录完整拷贝到从库包括auto.cnf文件当主从库的UUID相同时从库的I/O线程会停止工作并报告错误代码13117。这是MySQL的一种保护机制防止数据循环复制。2. 快速定位问题遇到主从复制中断时第一步是确认是否真的是UUID冲突导致的。以下是诊断步骤2.1 检查从库状态SHOW SLAVE STATUS\G在输出中重点关注以下字段Last_IO_Errno: 13117Last_IO_Error: 包含equal MySQL server UUIDs的错误信息2.2 确认UUID是否相同在主库和从库上分别执行SHOW VARIABLES LIKE server_uuid;或者直接查看数据文件cat /var/lib/mysql/auto.cnf在Docker环境中你可能需要先进入容器docker exec -it mysql-slave bash3. 解决方案修改从库UUID确认是UUID冲突后我们需要修改从库的UUID。重要提示绝对不要修改主库的UUID这会导致所有从库需要重新配置。3.1 停止从库复制首先停止从库的复制进程STOP SLAVE;3.2 修改UUID在从库服务器上执行以下操作备份原有的auto.cnf文件mv /var/lib/mysql/auto.cnf /var/lib/mysql/auto.cnf.bak重启MySQL服务让系统自动生成新的UUIDdocker restart mysql-slave对于非Docker环境systemctl restart mysqld3.3 验证新UUID重启后检查新的UUID是否生成cat /var/lib/mysql/auto.cnf确认新UUID与主库不同。4. 重新配置复制UUID修改后需要重新配置复制4.1 重置复制状态RESET SLAVE ALL;4.2 重新配置复制参数CHANGE MASTER TO MASTER_HOST主库IP, MASTER_USERrepl, MASTER_PASSWORD密码, MASTER_PORT3306, MASTER_AUTO_POSITION1;4.3 启动复制START SLAVE;4.4 检查复制状态SHOW SLAVE STATUS\G确认Slave_IO_Running和Slave_SQL_Running都为Yes且没有错误。5. Docker环境下的特殊注意事项在Docker环境中处理这个问题时有几个额外的注意事项数据卷管理如果使用数据卷确保每个容器有独立的数据卷容器重启策略修改UUID后必须重启容器才能生效持久化存储确保auto.cnf文件存储在持久化卷上避免容器重建时丢失6. 预防措施为了避免将来再次遇到这个问题可以采取以下预防措施初始化脚本在Dockerfile中添加脚本检查并生成唯一UUID数据卷模板为每个从库准备独立的数据卷模板监控告警设置监控当发现UUID冲突时及时告警7. 高级技巧自动化UUID管理对于需要频繁部署MySQL实例的环境可以编写自动化脚本处理UUID#!/bin/bash DATA_DIR/var/lib/mysql if [ -f $DATA_DIR/auto.cnf ]; then echo Removing existing auto.cnf to generate new UUID rm -f $DATA_DIR/auto.cnf fi # 启动MySQL服务会自动生成新的auto.cnf /usr/sbin/mysqld --usermysql --initialize-insecure这个脚本可以在容器启动时执行确保每次启动都生成新的UUID。8. 常见问题解答Q修改UUID会影响已有的数据吗A不会影响已有数据只会影响复制关系。修改后需要重新配置复制。Q能否手动指定UUID而不是自动生成A可以但不推荐。手动修改auto.cnf文件后需要确保全局唯一性。Q除了UUID冲突还有哪些情况会导致错误13117A13117错误专门用于UUID冲突其他复制错误会有不同的错误代码。Q在生产环境中如何避免这个问题A建议使用配置管理工具(如Ansible)或容器编排系统(如Kubernetes)来确保每个实例有唯一配置。9. 性能优化建议解决UUID冲突后还可以考虑以下优化措施并行复制启用基于组提交的并行复制SET GLOBAL slave_parallel_workers4; SET GLOBAL slave_parallel_typeLOGICAL_CLOCK;复制过滤如果不需要复制所有数据库可以设置过滤规则CHANGE REPLICATION FILTER REPLICATE_DO_DB(db1, db2);监控延迟定期检查Seconds_Behind_Master指标10. 真实案例分享最近在处理一个客户环境时他们使用Docker Compose部署了MySQL主从复制但所有容器都挂载了同一个数据卷。这导致所有实例共享相同的auto.cnf文件UUID自然相同。解决方案是为每个MySQL容器创建独立的数据卷在从库容器启动时先删除已有的auto.cnf使用--initialize-insecure参数启动生成新UUID然后正常启动MySQL并配置复制这个案例告诉我们在容器化环境中数据卷的管理尤为重要。

相关文章:

MySQL主从复制报错13117?别慌,手把手教你排查和修复UUID冲突(附Docker环境实战)

MySQL主从复制报错13117?别慌,手把手教你排查和修复UUID冲突(附Docker环境实战) 当你在Docker环境中部署MySQL主从复制时,突然遇到"Fatal error: The replica I/O thread stops because source and replica have …...

C语言完美演绎8-17

/* 范例&#xff1a;8-17 */#include <stdio.h>void func(char *i,int j){printf("%d 以%s方式来调用函数指针\n",j,i);}void main(void){void (*pfun)(char *a, int b); /* 定义pfun函数指针 */pfunfunc; /* 将函数func()的地址赋值给函数指针pfun */(*pf…...

省市县关键数字技术专利数据(1985-2022年)

01、数据简介依据国家知识产权局发布的《关键数字技术专利分类体系&#xff08;2023&#xff09;》&#xff0c;为贯彻落实党的二十大关于加快发展数字经济相关部署要求&#xff0c;加强对关键数字技术专利规模、结构、质量的统计监测&#xff0c;助力数字经济关键核心技术攻关…...

企业数字技术创新数据(2000-2023年)

01、数据介绍数字技术创新是以新一代信息技术为核心载体&#xff0c;通过技术体系变革与技术融合&#xff0c;推动产业数字化和智能化程度提升的技术创新过程。数字技术融合创新是将多种数字技术相互融合&#xff0c;形成新的技术体系或解决方案&#xff0c;以推动产品或服务的…...

超级钢琴密度算法:Amanous系统的架构与实现

1. 超级钢琴密度算法的技术背景 在传统钢琴演奏中&#xff0c;人类手指的生理限制将音符密度约束在约15-20个音符/秒的范围内。然而&#xff0c;现代自动演奏钢琴&#xff08;如Yamaha Disklavier&#xff09;通过电磁击弦机制和MIDI控制&#xff0c;理论上可以实现超过100音符…...

傅里叶变换与矩形脉冲频域特性解析

1. 傅里叶变换基础概念解析傅里叶变换是信号处理领域最强大的数学工具之一&#xff0c;它建立了时域和频域之间的桥梁。简单来说&#xff0c;这个变换告诉我们&#xff1a;任何时域波形都可以表示为不同频率正弦波的叠加&#xff0c;反之亦然。这种双向转换关系在工程实践中具有…...

TensorFlow文本分类实战:从原理到部署

1. 文本分类与神经网络的核心价值文本分类是自然语言处理&#xff08;NLP&#xff09;中最基础也最实用的技术之一。想象一下每天处理的邮件自动归类、电商平台的商品评论分析、社交媒体的内容审核——这些场景背后都离不开高效的文本分类系统。传统方法依赖人工设计特征和规则…...

使用OpenClaw配置Taotoken作为大模型供应商的详细步骤

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 使用OpenClaw配置Taotoken作为大模型供应商的详细步骤 对于使用OpenClaw工具链的开发者而言&#xff0c;接入不同的大模型服务商通…...

Awesome AI Tools:从图像生成到代码辅助,200+工具分类解析与实战指南

1. 项目概述与核心价值如果你和我一样&#xff0c;每天被各种AI工具的新闻和广告轰炸&#xff0c;从ChatGPT到Midjourney&#xff0c;从文本生成到图像创作&#xff0c;感觉好像不学点AI就要被时代淘汰了&#xff0c;但又苦于信息太杂、工具太多&#xff0c;不知道从哪里下手—…...

ADI HDL开源库实战指南:JESD204B接口与FPGA系统设计

1. 项目概述&#xff1a;ADI HDL 开源库的深度解析与实战指南 如果你正在从事基于ADI&#xff08;Analog Devices Inc.&#xff09;高速数据转换器、射频收发器或精密模拟前端的FPGA系统设计&#xff0c;那么你大概率绕不开一个名字&#xff1a; analogdevicesinc/hdl 。这个…...

Python静态代码检查工具开发实战与优化

1. 项目概述&#xff1a;Python程序检查工具开发实战刚接手一个遗留Python项目时&#xff0c;我对着三万行没有类型提示的代码陷入了沉思。这时候才真正体会到检查工具&#xff08;Inspection Tools&#xff09;的价值——它们就像代码的X光机&#xff0c;能快速定位潜在问题、…...

3秒破解百度网盘提取码:智能解析工具如何改变你的资源获取体验

3秒破解百度网盘提取码&#xff1a;智能解析工具如何改变你的资源获取体验 【免费下载链接】baidupankey 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 还在为百度网盘分享链接的提取码而烦恼吗&#xff1f;baidupankey作为一款专业的百度网盘提取码智能获…...

Qwen3.5-4B-AWQ详细步骤:GPU显存不足时kill残留VLLM进程标准流程

Qwen3.5-4B-AWQ详细步骤&#xff1a;GPU显存不足时kill残留VLLM进程标准流程 1. 项目概述 Qwen3.5-4B-AWQ-4bit是阿里云通义千问团队推出的轻量级稠密模型&#xff0c;经过4bit AWQ量化后显存占用仅约3GB&#xff0c;可以在RTX 3060/4060等消费级显卡上流畅运行。 核心优势&…...

用 GPT-Image-2 做系列化视觉内容:保持风格统一的 Prompt 管理技巧

在技术领域&#xff0c;我们常常被那些闪耀的、可见的成果所吸引。今天&#xff0c;这个焦点无疑是大语言模型技术。它们的流畅对话、惊人的创造力&#xff0c;让我们得以一窥未来的轮廓。然而&#xff0c;作为在企业一线构建、部署和维护复杂系统的实践者&#xff0c;我们深知…...

GLM-4-9B-Chat-1M惊艳效果:1M上下文多文档比对(如不同版本合同差异逐条标红)

GLM-4-9B-Chat-1M惊艳效果&#xff1a;1M上下文多文档比对&#xff08;如不同版本合同差异逐条标红&#xff09; 想象一下&#xff0c;你手头有两份长达几百页的合同&#xff0c;一份是初稿&#xff0c;一份是最终版。你需要找出它们之间所有的差异——一个词、一个标点、一个…...

GPT-Image-2 API 接入实测:响应速度、图片质量和调用限制记录

在技术领域&#xff0c;我们常常被那些闪耀的、可见的成果所吸引。今天&#xff0c;这个焦点无疑是大语言模型技术。它们的流畅对话、惊人的创造力&#xff0c;让我们得以一窥未来的轮廓。然而&#xff0c;作为在企业一线构建、部署和维护复杂系统的实践者&#xff0c;我们深知…...

Phi-3.5-mini-instruct部署案例:中小企业低成本AI助手搭建(vLLM+Chainlit)

Phi-3.5-mini-instruct部署案例&#xff1a;中小企业低成本AI助手搭建&#xff08;vLLMChainlit&#xff09; 1. 项目概述 Phi-3.5-mini-instruct是一个轻量级但功能强大的开源文本生成模型&#xff0c;特别适合中小企业构建低成本AI助手。这个模型基于高质量的训练数据&…...

Hypnos-i1-8B惊艳效果:自动生成含<font color=purple>颜色语义</font>的推理链图示

Hypnos-i1-8B惊艳效果&#xff1a;自动生成含颜色语义的推理链图示 1. 模型核心能力展示 Hypnos-i1-8B作为一款专注于推理能力的8B级开源大模型&#xff0c;其最令人惊艳的功能之一是能够自动生成带有颜色语义标注的思维链&#xff08;Chain-of-Thought&#xff09;推理过程。…...

ru-text:为AI编码助手注入专业俄语文本质量引擎

1. 项目概述&#xff1a;为AI编码助手注入俄语文本质量之魂 如果你是一名在俄语环境中工作的开发者、产品经理或内容创作者&#xff0c;并且正在使用诸如 Claude Code、GitBrains 或 Cursor 这类AI编码助手&#xff0c;那么你很可能面临一个共同的痛点&#xff1a;当助手用俄语…...

Qwen3-TTS在智能客服场景落地:快速搭建多语言语音应答系统

Qwen3-TTS在智能客服场景落地&#xff1a;快速搭建多语言语音应答系统 1. 智能客服语音交互的挑战与机遇 在全球化商业环境中&#xff0c;智能客服系统面临着多语言支持和实时交互的双重挑战。传统语音合成方案往往存在几个痛点&#xff1a; 语言切换困难&#xff1a;需要为…...

M2LOrder高性能推理:多线程批量预测较单条提速300%实测数据

M2LOrder高性能推理&#xff1a;多线程批量预测较单条提速300%实测数据 1. 项目概述 M2LOrder是一个专业的情绪识别与情感分析服务&#xff0c;基于高效的.opt模型文件构建。该系统提供HTTP API和WebUI两种访问方式&#xff0c;特别针对批量处理场景进行了深度优化。 在实际…...

别再乱画了!产品经理必懂的三大流程图(业务/任务/页面)保姆级绘制指南

产品经理的流程图实战手册&#xff1a;从业务架构到页面跳转的精准表达 每次产品评审会上&#xff0c;当开发同事皱着眉头说"这个流程图我看不懂"时&#xff0c;你是否感到一阵心虚&#xff1f;作为产品经理&#xff0c;流程图是我们最重要的沟通工具之一&#xff0c…...

ESP32-S2的WiFi FTM测距能有多准?我用Arduino做了个室内定位小实验,结果和思考

ESP32-S2 WiFi FTM测距实验&#xff1a;从原理到实战的精度验证 去年夏天&#xff0c;我在智能家居项目中遇到了一个棘手问题&#xff1a;如何在不增加硬件成本的前提下&#xff0c;实现房间级的人员定位。当时市面上主流的蓝牙信标方案要么精度不足&#xff0c;要么需要额外部…...

用STM32和4x4矩阵键盘复刻一个简易电梯控制器(附完整代码与避坑指南)

用STM32和4x4矩阵键盘打造智能电梯控制器&#xff1a;从硬件搭建到调度算法实战 在嵌入式系统开发领域&#xff0c;将多个功能模块整合成一个协同工作的完整系统&#xff0c;是检验开发者能力的重要标准。这个基于STM32的电梯控制器项目&#xff0c;完美融合了矩阵键盘输入、步…...

Cursor AI Agent任务完成通知工具:提升开发效率的智能提醒方案

1. 项目概述与核心价值 如果你和我一样&#xff0c;每天大部分时间都泡在 Cursor 编辑器里&#xff0c;让 AI Agent 帮你写代码、重构项目或者生成文档&#xff0c;那你肯定遇到过这个场景&#xff1a;你给 Agent 下达了一个复杂的指令&#xff0c;然后切到浏览器或者另一个窗…...

别再只用GeoJSON了!Cesium加载KML/KMZ文件避坑指南与高级玩法

Cesium开发者进阶&#xff1a;KML/KMZ文件加载的深度避坑与高阶应用指南 当大多数Cesium开发者还在用GeoJSON处理基础地理数据时&#xff0c;真正的高手已经开始挖掘KML/KMZ这两种被低估的格式潜力。本文将带你突破基础加载的层面&#xff0c;直击Cesium对KML标准支持的核心痛点…...

交直流电力电缆温度场有限元仿真与散热优化分析

交直流电力电缆温度场有限元仿真与散热优化分析 摘要 电力电缆在运行过程中因焦耳热效应产生温升,温度场分布直接影响电缆的载流量、绝缘寿命和运行可靠性。交流电缆与直流电缆在发热机理上存在本质差异:交流电缆除导体直流电阻损耗外,还需计及集肤效应、邻近效应及介质损…...

Gitee崛起:CODING停服后的国产DevOps新选择

腾讯CODING DevOps系列产品的停服公告在开发者社区引发震动&#xff0c;这一决定将直接影响数百万开发者和数千家企业用户的日常研发工作。作为中国领先的源代码托管平台&#xff0c;Gitee凭借其本土化优势、完善的功能生态和活跃的开源社区&#xff0c;正迅速成为市场关注的焦…...

Gitee军工软件工厂:国产化DevOps平台如何重塑国防研发范式

在数字化战争时代&#xff0c;军用软件已成为决定现代战争胜负的关键要素。从精确制导武器的控制系统到战场态势感知平台&#xff0c;从无人作战装备的智能算法到指挥决策系统&#xff0c;软件正以惊人的速度重塑着现代军事装备的价值链。这一变革背后&#xff0c;是军工软件研…...

AI开发平台深度评测:从技术参数到商业落地的全面较量

平台生态与核心能力解析 当前AI开发平台市场呈现出明显的分层竞争格局&#xff0c;百度千帆、阿里ModelScope、华为ModelArts与新兴的模力方舟(MoArk)各自占据不同生态位。模力方舟作为后起之秀&#xff0c;凭借Gitee1800万开发者生态的天然优势&#xff0c;构建了"代码模…...