iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >show slave status\G中的Read_Master_Log_Pos和Relay_Log的用法是怎样的
  • 802
分享到

show slave status\G中的Read_Master_Log_Pos和Relay_Log的用法是怎样的

2024-04-02 19:04:59 802人浏览 泡泡鱼
摘要

本篇文章为大家展示了show slave status\G中的Read_Master_Log_Pos和Relay_Log的用法是怎样的,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希

本篇文章为大家展示了show slave status\G中的Read_Master_Log_Pos和Relay_Log的用法是怎样的,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

ust to clarify, there are three sets of file/position coordinates in SHOW SLAVE STATUS:

1) The position, ON THE MASTER, from which the I/O thread is reading:Master_Log_File/Read_Master_Log_Pos. -----相对于主库,从库读取主库的二进制日志的位置,是IO线程

2) The position, IN THE RELAY LOGS, at which the sql thread is executing:Relay_Log_File/Relay_Log_Pos ----相对于从库,是从库的sql线程执行到的位置

3) The position, ON THE MASTER, at which the SQL thread is executing:Relay_Master_Log_File/Exec_Master_Log_Pos ----相对于主库,是从库的sql线程执行到的位置

Numbers 2) and 3) are the same thing, but one is on the slave and the other is on the master.

Mysql > show slave status \G

Master_Log_File: mysql-bin-m.000329

Read_Master_Log_Pos: 863952156 ----上面二行代表IO线程,相对于主库的二进制文件

Relay_Log_File: mysql-relay.003990

Relay_Log_Pos: 25077069 ----上面二行代表了sql线程,相对于从库的中继日志文件

Relay_Master_Log_File: mysql-bin-m.000329

.....

Exec_Master_Log_Pos: 863936961---上面二行代表了sql线程,相对主库

(为了方便演示,我把上面这行提前了.)

Relay_Log_Space: 25092264---当前relay-log文件的大小

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

从上面可以看到,read_master_log_pos 始终会大于exec_master_log_pos的值(也有可能相等):因为一个值是代表io线程,一个值代表sql线程;sql线程肯定在io线程之后.(当然,io线程和sql线程要读写同一个文件,否则比较就失去意义了) .

在binlog中,Xid代表了提交的事务号.现在我们分别去主从库看看,验证一下,在主库的mysql-bin-m.000329文件的863936961处是否与从库的mysql-relay.003990文件的25077069处有相同的sql语句.

先看主库的binlog:

#at 863936961

#100111 20:11:39 server id 115000 end_log_pos 863937234 Query thread_id=515886 exec_time=0 error_code=0

use mall00/!/;

UPDATE mall00.t_item_sid88 SET item_end_time = 1263816699, item_is_online = 1, item_status = 1 WHERE iid IN (94322390, 94322428, 94322452, 94322473, 94322506, 94322532, 94322604, 94322641, 94322670, 94322706)/!/;

#at 863937234

#100111 20:11:39 server id 115000 end_log_pos 863937261 Xid = 1225244590

COMMIT/!/;

#at 863937261

#100111 20:11:39 server id 115000 end_log_pos 863937457 Query thread_id=515886 exec_time=0error_code=0

SET TIMESTAMP=1263211899/!/;

再看从库的relaylog:

#at 25077069

#100111 20:11:39 server id 115000 end_log_pos863937234 Query thread_id=515886 exec_time=0 error_code=0

use mall00/!/;

UPDATE mall00.t_item_sid88 SET item_end_time = 1263816699, item_is_online = 1, item_status = 1 WHERE iid IN (94322390, 94322428, 94322452, 94322473, 94322506, 94322532, 94322604, 94322641, 94322670, 94322706)/!/;

#at 25077342

#100111 20:11:39 server id 115000 end_log_pos 863937261 Xid = 1225244590

COMMIT/!/;

从上面的日志中,可以看到binlog与realy-log的内容是相同的,除了开头的at位置处的偏移量.因为偏移量始终是相对于文件自身来说,主库上相对于binlog本身,从库上相对于relay-log本身.还可以看到,在每个query语句过后,都有一个Xid 的event,提交该事务,也表明在mysql中是自动提交的,每条语句执行完毕后,系统都自动提交了.那么在基于行的复制中,可能会看到多条binlog 语句才对应一次commit,自然说明这是基于行的复制.

还有一点,就是主库和从库的对应位置的event大小是相同的,例如上面的:

25077342-25077069(从库上event大小)  =  863937234-863936961(主库上event大小)

否则,说明从库的relay-log丢失了,有可能是操作系统缓存丢失,也可能是mysql 异常crash导致relay-log buffer中的数据丢失.那么这时候就需要重设主从同步了.

上述内容就是show slave status\G中的Read_Master_Log_Pos和Relay_Log的用法是怎样的,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注编程网数据库频道。

您可能感兴趣的文档:

--结束END--

本文标题: show slave status\G中的Read_Master_Log_Pos和Relay_Log的用法是怎样的

本文链接: https://www.lsjlt.com/news/61291.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • show slave status\G中的Read_Master_Log_Pos和Relay_Log的用法是怎样的
    本篇文章为大家展示了show slave status\G中的Read_Master_Log_Pos和Relay_Log的用法是怎样的,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希...
    99+
    2024-04-02
  • MySQL中show slave status关键值和MGRrelay log的清理策略
    这篇文章主要为大家展示了“MySQL中show slave status关键值和MGRrelay log的清理策略”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“...
    99+
    2024-04-02
  • js怎样实现jquery动画的hide()和show()方法
    小编给大家分享一下js怎样实现jquery动画的hide()和show()方法,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!JavaScript的特点1.JavaScript主要用来向HTML页面添加交互行为。2.Java...
    99+
    2023-06-14
  • show processlist中kill锁表语句与慢sql是怎样的
    本篇文章为大家展示了show processlist中kill锁表语句与慢sql是怎样的,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。show processlis...
    99+
    2024-04-02
  • Vue.js中v-show和v-if指令的用法介绍
    目录一、v-show指令二、v-if指令三、v-show和v-if的区别四、v-else指令五、v-else-if一、v-show指令 v-show指令可以用来动态的控制DOM元素的...
    99+
    2024-04-02
  • shell中的for循环用法是怎样的
    shell中的for循环用法是怎样的,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。这篇文章主要介绍了shell中的for循环用法详解,文中通过示例代码介绍的非常详细,对大家...
    99+
    2023-06-28
  • DIV样式中常用属性用法是怎样的
    本篇文章为大家展示了DIV样式中常用属性用法是怎样的,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。DIV样式汇总最近在学习JavaScript,在做到个要控制控件样...
    99+
    2024-04-02
  • SQL中like的写法是怎样的
    本篇内容主要讲解“SQL中like的写法是怎样的”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“SQL中like的写法是怎样的”吧!某交易系统,监控告警有长SQL...
    99+
    2024-04-02
  • web开发中的方法调用是怎样的
    这篇文章将为大家详细讲解有关web开发中的方法调用是怎样的,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。方法调用是不是很熟悉那...
    99+
    2024-04-02
  • Oracle中decode函数用法是怎样的
    这期内容当中小编将会给大家带来有关Oracle中decode函数用法是怎样的,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1.decode函数的两种形式第一种形式含义解释:decode(条件,值1,返回值...
    99+
    2023-06-22
  • php return用法是怎样的
    本篇文章给大家分享的是有关php return用法是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。php return的使用方法:1、通过“return expressi...
    99+
    2023-06-21
  • Mysql数据类型的介绍和用法是怎样的
    这篇文章给大家介绍Mysql数据类型的介绍和用法是怎样的,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。数据类型数值型整数int(m) 四个字节(-21亿~21亿) ---java:in...
    99+
    2024-04-02
  • sql中in和exists的使用情况是怎样的
    本篇文章给大家分享的是有关sql中in和exists的使用情况是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。in 和 exists的区...
    99+
    2024-04-02
  • JavaScript中变量和作用域是怎样的
    这期内容当中小编将会给大家带来有关JavaScript中变量和作用域,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。 JavaScript的变量与其他语言的变量有很大区别。...
    99+
    2024-04-02
  • MySQL中PHP语法是怎样的
    这篇文章给大家介绍MySQL中PHP语法是怎样的,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。MySQL PHP 语法MySQL 可应用于多种语言,包括 PERL, C, C++, J...
    99+
    2024-04-02
  • JavaScript中null的介绍以及用法是怎样的
    本篇文章给大家分享的是有关JavaScript中null的介绍以及用法是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。JavaScrip...
    99+
    2024-04-02
  • redis的incr和hash应用是怎样的
    这期内容当中小编将会给大家带来有关redis的incr和hash应用是怎样的,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。 redis的inc...
    99+
    2024-04-02
  • Java并发编程中LockSupport的用法是怎样的
    Java并发编程中LockSupport的用法是怎样的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。1、什么是LockSupportLockSupport是用于创建锁和其他同步...
    99+
    2023-06-25
  • css3中display box使用方法是怎样的
    css3中display box使用方法是怎样的,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。其中的一个场景如下:假如我们想要...
    99+
    2024-04-02
  • Percona-Toolkit中pt-kill用法是怎样的呢
    Percona-Toolkit中pt-kill用法是怎样的呢,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。生产环境中我们时常遇...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作