0

0

MySQL Replication常用SQL、应用、文件、流程、模式_MySQL

php中文网

php中文网

发布时间:2016-06-01 13:30:22

|

965人浏览过

|

来源于php中文网

原创

bitsCN.com

mysql replication常用sql、应用、文件、流程、模式

 

无聊时写的,算科普吧,毕竟内置的Replication是MySQL的骄傲

 

㈠ SQL语句篇

 

   管理主库部分

 

    show master logs

    列出主库二进制日志

    

    show master status

    列出当前主库二进制日志状态

    

    show slave hosts

    列出连接到主库的备库信息

    

    show binlog events in 'log_name'

    列出二进制日志中的事件

    

    reset master

    置空二进制日志索引文件,并创建一个新的二进制日志

    

    purge master logs to 'log_name'

    purge master logs before 'date'

    删除主库的二进制日志

    建议删除流程:

    ① 目标日志确认如下:

       在主库:show master logs 

       在备库:show slave status[每个备库都执行,抓取延迟最大的备库]

    ② 备份

    ③ purge 

 

 

   管理备库部分

 

 

    change master to master_**

    告诉备库如何连接到主库并重放其二进制日志

    参数较多较杂,请自行参阅手册

    

    reset slave

    删除master.info、relay-log.info以及所有中继日志,并新建一个中继日志

    

    show slave status

    查看当前备库状态

    输出较多,下面捡几个重要的谈谈

    Slave_IO_State、Slave_IO_Running、Slave_SQL_Running:表示IO线程和SQL线程健康状况

    Master_Log_File:IO线程当前正在读取的主库的二进制日志的名称

    Read_Master_Log_Pos:当前主库的二进制日志中,IO线程已经读取的位置

    Relay_Log_File:SQL线程当前正在读取和执行的中继日志的名称

    Relay_Log_Pos:当前中继日志中,SQL线程已经读取和执行的位置

    Exec_Master_Log_Pos:同步到备库的二进制日志的位置

    

    能借助该输出来计算复制延迟:

    

    Read_Master_Log_Pos-Exec_Master_Log_Pos:表示SQL线程延迟,进而表示了主备是否同步

    顺道提一点,二进制日志坐标:Position,减去Read_Master_Log_Pos:表示IO线程延迟

    

    start slave

    启动备库SQL线程/IO线程

    

    stop slave 

    停止备库SQL线程/IO线程 

 

 

㈡ 应用篇

 

 

   数据分布

     →给地理上互相隔离的IDC分发数据

   热备份

     →复制是备份的技术补充,但不能代替备份

   读扩展

     →负载均衡

   报表分析

     →在不影响主库业务的情况下,月底的审计和报表分析可放到备库上做

   升级测试

     →用最新版本的mysql做备库

   故障转移

DM建站系统汽车保养维修HTML5网站模板1.5
DM建站系统汽车保养维修HTML5网站模板1.5

DM建站系统汽车保养维修HTML5网站模板,DM企业建站系统。是由php+mysql开发的一套专门用于中小企业网站建设的开源cms。DM系统的理念就是组装,把模板和区块组装起来,产生不同的网站效果。可以用来快速建设一个响应式的企业网站( PC,手机,微信都可以访问)。后台操作简单,维护方便。DM企业建站系统安装步骤:第一步,先用phpmyadmin导入sql文件。 第二步:把文件放到你的本地服务器

下载

     →提升备库为主库,最小化宕机时间

     

 

 

㈢ 文件篇

 

 

   master.info

   记录备库连接主库所需要的信息,如:主机、用户名、密码、当前二进制日志坐标等

   同时,他也能告诉主库:"我需要某个日志的某个位置之后的内容,请发给我"

   

   relay-log.info

   记录当前备库正在复制的二进制日志和中继日志的坐标

   

   binlog index 

   记录主库磁盘上二进制日志文件

   

   relay log 

   存储IO线程从主库复制的二进制日志事件

   

   relay log index 

   作用同binlog index 

 

㈣ 流程篇

 

 

   ⑴ 主库记录二进制日志:按事务提交的顺序记录事件

   ⑵ 备库将主库的二进制日志复制到本地中继日志

   

      启动IO线程

      发起TCP/IP连接

      在主库启动binlog dump线程

      读取主库二进制日志

      IO线程记录到relay log和master.info

     

   ⑶ 备库读取并重放二进制日志事件

 

㈤ 模式篇

 

 

   复制模式可分:STATEMENT和ROW,通过binlog_format控制

   没有哪种模式能胜任任何场景,谓之:存在即是合理

   MySQL能在这两种模式动态却换(binlog_format='MIXED')

   缺省以STATEMENT运行,当无法正确复制时则以ROW运行

   

   下面列出他们各自的优缺点

   

   ROW模式

   

   优点

   

   几乎没有基于行的复制无法处理的场景

   更少的锁竞争,因为对强串行化的需求降低

   更低的CPU花费,因为没有必要在构造SQL上下文信息

   更好的保证了复制到备库的数据的品质

   更快的定位和解决数据不一致,如当找不到修改的行时,ROW模式会使整个复制过程停止而STATEMENT不会

   

   缺点

   

   无法确定执行了什么SQL

   黑盒子,很难定位出故障的地方

   占用更多的磁盘空间

   更多的网络带宽开销

   

   

   STATEMENT模式

   

   优点

   

   基于行的复制整个过程基本上就是执行SQL

   这很容易定位问题

   

   缺点

   

   无法正确复制,特别是当涉及到存储过程、触发器、函数等

   这会失去复制的意义

 

bitsCN.com

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
python print用法与作用
python print用法与作用

本专题整合了python print的用法、作用、函数功能相关内容,阅读专题下面的文章了解更多详细教程。

0

2026.02.03

python源码大全
python源码大全

本专题整合了python源码相关内容合集,阅读专题下面的文章了解更多详细内容。

1

2026.02.03

python 解包
python 解包

本专题整合了python解包的概念、操作方法等等内容,阅读专题下面的文章了解更多详细教程。

2

2026.02.03

Python 序列化
Python 序列化

本专题整合了python序列化、反序列化相关内容,阅读专题下面的文章了解更多详细内容。

12

2026.02.02

AO3官网入口与中文阅读设置 AO3网页版使用与访问
AO3官网入口与中文阅读设置 AO3网页版使用与访问

本专题围绕 Archive of Our Own(AO3)官网入口展开,系统整理 AO3 最新可用官网地址、网页版访问方式、正确打开链接的方法,并详细讲解 AO3 中文界面设置、阅读语言切换及基础使用流程,帮助用户稳定访问 AO3 官网,高效完成中文阅读与作品浏览。

206

2026.02.02

主流快递单号查询入口 实时物流进度一站式追踪专题
主流快递单号查询入口 实时物流进度一站式追踪专题

本专题聚合极兔快递、京东快递、中通快递、圆通快递、韵达快递等主流物流平台的单号查询与运单追踪内容,重点解决单号查询、手机号查物流、官网入口直达、包裹进度实时追踪等高频问题,帮助用户快速获取最新物流状态,提升查件效率与使用体验。

102

2026.02.02

Golang WebAssembly(WASM)开发入门
Golang WebAssembly(WASM)开发入门

本专题系统讲解 Golang 在 WebAssembly(WASM)开发中的实践方法,涵盖 WASM 基础原理、Go 编译到 WASM 的流程、与 JavaScript 的交互方式、性能与体积优化,以及典型应用场景(如前端计算、跨平台模块)。帮助开发者掌握 Go 在新一代 Web 技术栈中的应用能力。

15

2026.02.02

PHP Swoole 高性能服务开发
PHP Swoole 高性能服务开发

本专题聚焦 PHP Swoole 扩展在高性能服务端开发中的应用,系统讲解协程模型、异步IO、TCP/HTTP/WebSocket服务器、进程与任务管理、常驻内存架构设计。通过实战案例,帮助开发者掌握 使用 PHP 构建高并发、低延迟服务端应用的工程化能力。

16

2026.02.02

Java JNI 与本地代码交互实战
Java JNI 与本地代码交互实战

本专题系统讲解 Java 通过 JNI 调用 C/C++ 本地代码的核心机制,涵盖 JNI 基本原理、数据类型映射、内存管理、异常处理、性能优化策略以及典型应用场景(如高性能计算、底层库封装)。通过实战示例,帮助开发者掌握 Java 与本地代码混合开发的完整流程。

9

2026.02.02

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
麻省理工大佬Python课程
麻省理工大佬Python课程

共34课时 | 5.2万人学习

【web前端】Node.js快速入门
【web前端】Node.js快速入门

共16课时 | 2万人学习

php-src源码分析探索
php-src源码分析探索

共6课时 | 0.5万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号