以上就是MySQL数据延迟跳动的问题解决的详细内容。
经过和业务沟通也基本明确了以上问题。
进一步分析发现,整个业务使用了显示事务的方式:SET autocommit=0,整个事务中包含了几个大SQL,里面存储了很多操作日志明细,而且在事务操作过程中还基于Mybatis框架调用了多次select count(1) from xxx的操作。
可以看到是5K左右,算是比较大了,而这些额外的信息从哪里获得呢,我在主库开启了general_log,这样就能够得到更细粒度的操作日志了。
# mysqlbinlog slave-relay-bin.000066 | grep "GTID$(printf '\t')last_committed" -B 1 \> | grep -E '^# at' | awk '{print $3}' \> | awk 'NR==1 {tmp=$1} NR>1 {print ($1-tmp);tmp=$1}' \> | sort -n -r | head -n 100mysqlbinlog: [Warning] unknown variable 'loose-default-character-set=utf8'527852685268526852535253525352535253
我逐步分析了每张表的数据操作情况,得到的信息还是比较有限,继续做更进一步的分析,比如我们分析一下整个日志中的事务量大小:
# grep INSERT relaylog_xxxx.dump |awk '{print $3 " " $4}'|sed 's/INTO//g'|sort|uniq act_action_exec_info act_join_desc dic_subsidy_marketing_querylog_202008
接着我使用mysqlbinlog开始分析这些日志过程中的明细,根据如下的命令可以很快得到转储的日志中相关的表有3张。
所以很快得到了偏移量的变化情况:385983806 ,386062813 ,386125580
Slave_IO_State: Waiting for master to send event Master_Host: xxxx Master_User: dba_repl Master_Port: 4306 Connect_Retry: 60 Master_Log_File: mysqlbin.000044 Read_Master_Log_Pos: 386125369 Relay_Log_File: slave-relay-bin.000066 Relay_Log_Pos: 386125580 Relay_Master_Log_File: mysqlbin.000044
比如下面的一段输出,我截取的是Slave端的relay log进行分析,相应的字段为Relay_Log_Pos
查看数据库的相关日志发现竟然没有任何可以参考的日志记录,怎么分析这个问题呢,我们先来复现,于是我按照节奏抓取了3次问题出现的日志,即通过show slave status连续监测,抓取show slave status输出的结果保存下来,这样我们就得到了一个问题发生过程中的偏移量变化,而这个变化则是在SQLThread在回放过程中产生的问题。
首先在高可用检测中,有一套环境的检测时断时续,经过排查发现是数据库产生了延迟,在登录到从库show slave status查看,会发现Seconds_behind_master的值是不断跳动的,即从0~39~0~39这样的频率不断跳动,让人很搓火。
大数据时代,IT行业的新挑战与新机遇
随着信息技术的快速发展,IT行业已经进入了一个新的时代——大数据时代。大数据时代的到来,为IT行业带来了新的挑战,同时也为IT行业带来了新的机遇。下面,我将从三个方面来探讨大数据时代,IT行业的新挑战与新机遇。
一、新挑战
1. 数据存储和管理的挑战
在大数据时代,数据存储和管理的挑战将更加严峻。传统的IT架构中,数据存储和管理的成本高、效率低。随着数据量的不断增加,存储和管理的成本也将不断增加。此外,数据的安全性和可靠性也需要得到保障。
2. 数据分析和应用的挑战
在大数据时代,数据分析和应用的挑战也将越来越大。传统的数据分析和应用方式,往往需要耗费大量的时间和人力成本。随着数据量的不断增加,数据分析和应用的难度也将越来越大。
3. 云技术和网络安全的挑战
在大数据时代,云技术和网络安全的挑战也将越来越重要。随着大数据的发展,云计算技术也将会得到广泛的应用。在云计算的过程中,安全问题也将越来越受到关注。
二、新机遇
1. 大数据挖掘和人工智能的应用
大数据挖掘和人工智能的应用,将为IT行业带来新的机遇。通过大数据挖掘和人工智能的应用,可以实现自动化、智能化的数据处理和分析,提高企业的效率和竞争力。
2. 大数据共享和协作的应用
大数据共享和协作的应用,将为IT行业带来新的机遇。通过大数据共享和协作的应用,可以实现各种数据之间的互通和协作,为企业和组织提供更高效、更便捷的服务。
3. 大数据标准和规范的应用
大数据标准和规范的应用,将为IT行业带来新的机遇。通过大数据标准和规范的应用,可以实现各种数据的一致性、标准化和规范化,为企业和组织提供更可靠、更安全的数据。
三、结语
在大数据时代,IT行业将面临新的挑战,也将带来新的机遇。只有通过不断地探索和创新,才能应对大数据时代的到来,实现IT行业的持续发展。