sed截取慢SQL大文件并导出指定时间范围内容

有一个5G的慢SQL文件,需要导出指定时间段内的所有慢SQL记录,因为一些神奇的原因,慢SQL文件没有配置日志轮转(logrotate),所以决定使用grep和sed命令来完成过滤查询。

1.grep查询指定时间段开始时间的行号

bash 复制代码
[root@DB-master mysql]# grep -n '# Time: 250824 14:00' slow-master.log | head -1
149623336:# Time: 250824 14:00:03

2.grep查询指定时间段结束时间的行号

bash 复制代码
[root@DB-master mysql]# grep -n '# Time: 250824 14:30' slow-master.log | head -1
149637005:# Time: 250824 14:30:04

3.sed根据行号过滤导出文件内容

bash 复制代码
sed -n '149623336,149637005p' slow-master.log >> slow_log_master_1400_1430.log
相关推荐
༒࿈༙྇洞察༙༙྇྇࿈༒2 分钟前
PostgreSQL快速入门
数据库·postgresql
携欢6 分钟前
Portswigger靶场之Visible error-based SQL injection通关秘籍
数据库·sql
-XWB-34 分钟前
PostgreSQL诊断系列(4/6):表空间与膨胀分析——解决“越用越大”的存储难题
数据库·postgresql
幸福清风36 分钟前
【SQL】深入理解MySQL存储过程:MySQL流程控制语句详解
数据库·sql·mysql
她说人狗殊途1 小时前
DDL DML DQL DCL 语句
数据库·oracle
小清兔3 小时前
c#基础知识
开发语言·数据库·学习·unity·c#·游戏引擎·.net
天上掉下来个程小白4 小时前
微服务-25.网关登录校验-网关传递用户到微服务
java·数据库·微服务
ta是个码农6 小时前
Mysql——日志
java·数据库·mysql·日志
hhzz6 小时前
SQL 窗口函数(Window Function)终极指南
数据库·sql