MySQL 操作

慢查询排查

找到查询慢的sql

select * from `information_schema`.processlist where db = 'db_name' and host like '%client_ip%'

字符串截取

select name, substr(a.name, a.pst1 + 1, a.pst2 - a.pst1 -1) v from 
(
    select name, locate('_',name) pst1,  locate('.',name) pst2 from test 
) a

name               |v     |
-------------------+------+
20221122_201000.txt|201000|

 MySQL排序

SELECT id, name, status
FROM your_table
ORDER BY 
    CASE 
        WHEN id LIKE 'bgM%' AND status = '在线' THEN 1 -- 如果id以bgM开头且status是在线的,排到前面
        WHEN status = '在线' THEN 2 -- 如果status是在线的,排到稍后位置
        ELSE 3 -- 离线的排到最后
    END;

 MySQL查看binlog文件

把mysql binlog日志,转换为文本文件
mysqlbinlog -v binlog.000001 > output.txt
mysqlbinlog --help 查看更多帮助

 

posted @   szcj~  阅读(10)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示