#!/bin/bash
binlog_file_name=$1
first_gtid=`mysqlbinlog -v ${binlog_file_name} | grep 'SESSION.GTID_NEXT' | head -1 | awk -F "'" '{print $2}' | awk -F ":" '{print $2}'`
last_gtid=`mysqlbinlog -v ${binlog_file_name} |grep 'SESSION.GTID_NEXT'| grep -v AUTOMATIC| sed -n '$p'| awk -F "'" '{print $2}'| awk -F ":" '{print $2}'`
echo 'firt gtid is ' ${first_gtid}
echo 'last gtid is ' ${last_gtid}
next_gtid=`expr ${first_gtid} + 1`
echo
while [ $((next_gtid)) -lt $((last_gtid)) ]
do
exist_flag=`mysqlbinlog -v ${binlog_file_name} | grep ${next_gtid}`
if [ -z "$exist_flag" ] ;then
echo 'Not found gtid ' + ${next_gtid}
fi
next_gtid=`expr ${next_gtid} + 1`
done
校验binlog文件中的gtid是否连续
最新推荐文章于 2024-08-02 16:34:22 发布