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

mysql binlog 日志分析查找

文章目录

  • 前言
  • 一、分析 binlog 内容
  • 二、编写脚本
  • 结果
  • 总结


前言

高效快捷分析 mysql binlog 日志文件。
mysql binlog 文件很大
怎么快速通过关键字查找内容


一、分析 binlog 内容

通过 mysqlbinlog 命令可以看到 binlog 解析之后的大概样子
在这里插入图片描述

二、编写脚本

编写脚本 search_txt.sh,作用是搜索 binlog 内容
使用 awk

#!/bin/bash# 设置变量if [ "$1" = "" ]; then echo "param can not null "exit 1
fi	
BINLOG_FILE="/pddyjc/mysql/logbin/log_bin.$1"  # 替换为你的 binlog 文件路径
SEARCH_STRING="pddyjc_pb_year_sxbph_report_info"          # 替换为你要搜索的字符串
OUTPUT_FILE="search_pddyjc_pb_year_sxbph_report_info_$1.txt"  # 替换为你想要保存输出结果的文件路径if [ -e "$BINLOG_FILE" ]; thenecho "$BINLOG_FILE"	
else echo "$BINLOG_FILE file not exists"exit 1  
fi	
# 使用 awk 筛选 binlog 中包含特定字符串的完整事件
/pddyjc/mysql/bin/mysqlbinlog "$BINLOG_FILE" | awk -v search_string="$SEARCH_STRING" 'BEGIN { capturing = 0; prev_date_str = "";  # 附加, 记录上一次时间行}# /[#]/ { next; }  # 跳过注释行/$/ {  # 空行表示新事件的开始if (capturing) {capturing = 0;  # 结束当前事件的捕获}}{# 自定义判断条件	  if ($0 ~ search_string && $0 !~ "insert") {capturing = 1;  # 开始捕获事件if (prev_date_str != "") {print prev_date_str;      # 这里输出有时间那行,以方便判断执行时间}}if (capturing) {print;  # 如果正在捕获事件,则输出当前行}# 更新 prev_date_strif ($0 ~ "end_log_pos") {  prev_date_str = $0     # 把时间行缓存}        }
'  > "$OUTPUT_FILE"# 输出结果提示
echo "筛选完成,结果已保存到 $OUTPUT_FILE"

执行方式, 1234 是binlog 文件名序号(根据实际情况替换)
sh search_txt.sh 1234

结果

查看输出文件内容,得到的结果内容如下
在这里插入图片描述


总结

熟悉掌握 awk,快速通过指定关键字、表名等查找二进制日志内容。


—————— 但行好事莫问前程,你若盛开蝴蝶自来

相关文章:

mysql binlog 日志分析查找

文章目录 前言一、分析 binlog 内容二、编写脚本结果总结 前言 高效快捷分析 mysql binlog 日志文件。 mysql binlog 文件很大 怎么快速通过关键字查找内容 一、分析 binlog 内容 通过 mysqlbinlog 命令可以看到 binlog 解析之后的大概样子 二、编写脚本 编写脚本 search_…...

ubuntu 配置OpenOCD与RT-RT-thread环境的记录

1.git clone git://git.code.sf.net/p/openocd/code openocd 配置gcc编译环境 2. sudo gedit /etc/apt/source.list #cdrom sudo apt-get install git sudo apt-get install libtool-bin sudo apt-get install pkg-config sudo apt-install libusb-1.0-0-dev sudo apt-get…...

双系统解决开机提示security Policy Violation的方法

最近,Windows系统更新后,发现电脑开机无法进入桌面,显示“Verifiying shim SBAT data failed: security Policy Violation; So mething has gone seriously Wrong: SBAT self-check failed: Security Policy Violation”的英文错误信息。为了…...

附加共享数据库( ATTACH DATABASE)的使用场景

附加共享数据库(使用 ATTACH DATABASE)的功能非常实用,通常会在以下几种场景下需要用到: 1. 跨数据库查询和分析 场景: 你的公司有两个独立的数据库: 一个存储了学生信息 (school.db)一个存储了员工信息 …...

matlab的绘图的标题中(title)添加标量以及格式化输出

有时候我们需要在matlab绘制的图像的标题中添加一些变量,这样在修改某些参数后,标题会跟着一块儿变。可以采用如下的方法: x -10:0.1:10; %x轴的范围 mu 0; %均值 sigma 1; %标准差 y normpdf(x,mu,sigma); %使用normpdf函数生成高斯函数…...

2、第一个GO 程序

引言 接下里我们就用Go Land 工具,开发第一个GO程序。大家也可以用其他的开发工具,例如 Vs Code 1、新建项目 第一个是选择你的程序保存位置 (不要有中文)。 第二个是你的Go的编译器的安装地址。 选择完毕后,就点击 …...

【Linux-多线程】-线程安全单例模式+可重入vs线程安全+死锁等

一、线程安全的单例模式 什么是单例模式 单例模式是一种“经典的,常用的,常考的”设计模式 什么是设计模式 IT行业这么火,涌入的人很多.俗话说林子大了啥鸟都有。大佬和菜鸡们两极分化的越来越严重,为了让菜鸡们不太拖大佬的后…...

00000007_C语言设计模式

C语言设计模式 尽管 C 语言并不直接支持面向对象编程,但通过结构体和函数指针的灵活运用,我们依然可以实现多种经典的设计模式。 1. 工厂模式 1.1 工厂方法的定义与实现 工厂模式通过统一的接口创建对象,客户端无需知道具体的创建逻辑。 代…...

探索数据存储的奥秘:深入理解B树与B+树

key value 类型的数据红黑树(最优二叉树,内存最优),时间复杂度:O(logn),调整方便;一个结点分出两个叉B树一个节点可以分出很多叉数据量相等的条件下:红黑树的层数很高&am…...

Web渗透测试之XSS跨站脚本之JS输出 以及 什么是闭合标签 一篇文章给你说明白

目录 闭合标签 XSS之js输出 闭合标签 封闭标签 达到 让标签值不当成 一个属性值来展示 从而达到xss注入的效果 "> 为了想办法闭合前面的标签,不用也行成功率高一些 攻击方法 "><script>confirm(1)</script>, 其中 "> 我们称之为完成闭合…...

EasyExcel的应用

一、简单使用 引入依赖&#xff1a; 这里我们可以使用最新的4.0.2版本&#xff0c;也可以选择之前的稳定版本&#xff0c;3.1.x以后的版本API大致相同&#xff0c;新的版本也会向前兼容&#xff08;3.1.x之前的版本&#xff0c;部分API可能在高版本被废弃&#xff09;&…...

VS Code的设置功能以及多层级的设置方式与解密

VS Code的Settings功能为用户提供了极大的灵活性和便利性&#xff0c;使得用户可以根据自己的需求和偏好来定制编辑器的行为和外观。 Settings 可以实现的具体功能 VS Code的设置项非常丰富&#xff0c;涵盖了各个方面&#xff0c;包括但不限于&#xff1a; 编辑器选项&…...

UI自动化测试框架playwright--初级入门

一、背景&#xff1a;UI自动化的痛点&#xff1a; 1、设计脚本耗时&#xff1a; 需要思考要如何模拟用户的操作&#xff0c;如何触发页面的事件&#xff0c;还要思考如何设计脚本&#xff0c;定位和操作要交互的元素、路径、位置&#xff0c;再编写代码逻辑&#xff0c;往复循…...

SQL多表联查、自定义函数(字符串分割split)、xml格式输出

记录一个报表的统计&#xff0c;大概内容如下&#xff1a; 多表联查涉及的报表有&#xff1a;房间表、买家表、合同表、交易表、费用表、修改记录表 注意&#xff1a;本项目数据库使用的是sqlserver&#xff08;mssql&#xff09;&#xff0c;非mysql。 难点1:业主信息&#…...

Fast API使用

相关的代码上都有注释&#xff0c;其中前端代码是用来提交表单的 此代码进行了跨域处理&#xff0c;允许前端直接提交表单&#xff0c;并正常返回 完整代码&#xff1a; from typing import Unionfrom fastapi import Header, Cookie from pydantic import BaseModel, Field f…...

LLM - Llama 3 的 Pre/Post Training 阶段 Loss 以及 logits 和 logps 概念

欢迎关注我的CSDN&#xff1a;https://spike.blog.csdn.net/ 本文地址&#xff1a;https://spike.blog.csdn.net/article/details/145056912 Llama 3 是 Meta 公司发布的开源大型语言模型&#xff0c;包括具有 80 亿和 700 亿参数的预训练和指令微调的语言模型&#xff0c;支持…...

MySQL 中删除重复数据 SQL 写法

要在 MySQL 中删除重复的数据并只保留一条&#xff0c;可以使用下面的方法&#xff08;要用的时候直接复制小改下条件和表名称即即可&#xff09; 方法一&#xff1a;使用 left join 子查询删除重复数据(推荐) 温馨提示&#xff1a;本人在 500w 数据下执行此 SQL 耗费 15s-30s…...

docker minio镜像arm64架构

minio版本为RELEASE.2021-09-03T03-56-13Z 原项目信创改造&#xff0c;服务器资源改为了arm64架构&#xff0c;统信uos docker镜像库内没有对应的minio镜像&#xff0c;当前镜像为拉取源码后&#xff0c;自编译打包镜像&#xff0c;亲测可用。 使用方式 将tar包导入到服务器…...

VUE3 监听器(watch)

在 Vue 3 中&#xff0c;监听器&#xff08;watch&#xff09;是用来观察响应式数据的变化&#xff0c;并在数据发生变化时执行相应操作的机制。watch 主要用于响应式数据变化时的副作用处理&#xff0c;比如异步操作、数据更新等。 1. 基础使用 在 Vue 3 中&#xff0c;watc…...

CAPL如何设置TCP/IP传输层动态端口范围

在TCP/IP协议中,应用程序通过传输层协议TCP/UDP传输数据,接收方传输层收到数据后,根据传输层端口号把接收的数据上交给正确的应用程序。我们可以简单地认为传输层端口号是应用程序的标识,这就是为什么我们说应用程序在使用TCP/IP协议通信时要打开传输层端口号或者绑定端口号…...

SSM+Vue大学生兼职网站源码+论文

代码可以查看文章末尾⬇️联系方式获取&#xff0c;记得注明来意哦~&#x1f339; 分享万套开题报告任务书答辩PPT模板 作者完整代码目录供你选择&#xff1a; 《SpringBoot网站项目》1800套 《SSM网站项目》1500套 《小程序项目》1600套 《APP项目》1500套 《Python网站项目》…...

自学嵌入式第三天

选择排序 先找再换&#xff0c;每轮先找最小的再做交换每一轮的第一个数作为最小&#xff0c;从第二个数开始比较选出最小值交换到第一个位置。插入排序 一列数从第二个开始作为要插入的数a&#xff0c;逐个向前比较&#xff0c;比a大的数向后移一位&#xff0c;直到遇见比a小…...

超分辨数据集全景图:从经典基准到实战选型指南

1. 超分辨数据集入门&#xff1a;为什么选择比努力更重要 刚接触超分辨率技术时&#xff0c;我和大多数新手一样&#xff0c;第一反应是赶紧找个开源模型跑起来。结果发现同样的代码&#xff0c;在Set5上PSNR能到40&#xff0c;换成自己的照片却糊成一团。后来才明白&#xff0…...

OpenClaw API配置失败?3步快速修复,免费额度高效利用

OpenClaw API配置失败&#xff1f;3步快速修复&#xff0c;免费额度高效利用引言 OpenClaw作为新一代数据采集平台&#xff0c;其API凭借高效稳定的特性已成为开发者首选的工具之一。但在实际接入过程中&#xff0c;配置失败问题频发&#xff0c;尤其对免费额度用户造成严重困扰…...

告别低效:用快马ai一键生成can总线数据分析与统计脚本

在汽车电子和嵌入式系统开发中&#xff0c;CAN总线数据的分析是个高频需求。无论是调试车载网络问题&#xff0c;还是优化通信性能&#xff0c;都离不开对海量CAN帧数据的处理。但手动写解析脚本不仅耗时&#xff0c;还容易遗漏关键细节。最近我发现用InsCode(快马)平台的AI辅助…...

「码动四季·开源同行」go语言:统一认证与授权如何保障服务安全

认证与授权对于当前的互联网应用是非常重要的基础功能&#xff1a;认证用于验证当前用户的身份&#xff0c;而授权意味着用户在认证成功后&#xff0c;会被系统授予访问系统资源的权限。只有具备相应身份和权限的人才能访问系统中的相应资源&#xff0c;比如在购物网站中你只能…...

ruoyi-vue-pro源码部署实战:如何选择稳定版本并快速搭建开发环境

RuoYi-Vue-Pro 稳定版部署指南&#xff1a;从版本选择到开发环境搭建全解析 第一次接触 RuoYi-Vue-Pro 这个 Java 快速开发框架时&#xff0c;我像大多数开发者一样直接克隆了 master 分支&#xff0c;结果编译阶段就遭遇了各种依赖冲突和接口报错。后来才发现&#xff0c;这个…...

HCPL-0700-000E,低输入电流、高增益且与高安全隔离性能的光耦

型号介绍今天我要向大家介绍的是 Broadcom 的光耦——HCPL-0700-000E。它的内部结构就像一个高效的“信号转换站”&#xff0c;结合了一个发光二极管和一个集成的高增益光子探测器。光电二极管和输出级采用独立引脚设计&#xff0c;当输入端接收到电流时&#xff0c;LED 会发出…...

Pixel Fashion Atelier部署案例:中小企业低成本GPU算力优化生成方案

Pixel Fashion Atelier部署案例&#xff1a;中小企业低成本GPU算力优化生成方案 1. 项目概述与核心价值 Pixel Fashion Atelier是一款专为时尚设计领域打造的AI图像生成工作站&#xff0c;基于Stable Diffusion和Anything-v5模型构建。与传统AI工具不同&#xff0c;它采用独特…...

MTK平台录音杂音怎么来的?从AudioALSACaptureDataClientAurisysNormal的mDropPopSize说起

MTK平台录音杂音问题深度解析&#xff1a;从硬件初始化到算法优化的全链路解决方案 在移动设备音频开发领域&#xff0c;MTK平台的录音杂音问题一直是困扰开发者的典型痛点。特别是录音起始阶段出现的"爆破音"或"电流声"&#xff0c;不仅影响用户体验&…...