mysql_sniffer 是一个基于 MySQL 协议的抓包工具

2023-11-29 10:41:39 +08:00
 hcymysql

mysql_sniffer 是一个基于 MySQL 协议的抓包工具,用来实时抓取 MySQL 服务端的请求,并格式化输出,输出内容包括访问用户、访问时间、来源 IP 、执行的 SQL 语句。

https://github.com/hcymysql/mysql_sniffer

使用 mysql_sniffer 工具可以带来以下几点好处:

  1. 对 SQL 语法的改变有更深入的了解:MySQL 8.0 引入了一些新的 SQL 语法,也对一些旧的语法进行了修改或弃用。通过 mysql_sniffer ,DBA 可以抓取并分析现有的 SQL 语句,以确定它们是否会受到这些改变的影响。

  2. 发现并解决潜在的问题:在 MySQL 8.0 版本中,某些 SQL 语句无法正常运行,那么通过 mysql_sniffer ,DBA 可以提前发现这些问题,并在升级之前进行修复。

  3. 数据库割接、迁移时,使用 mysql_sniffer 可以方便地判断原主库是否还有业务访问。通过 mysql_sniffer ,你可以截获数据库的查询语句、事务操作等信息,并进行分析。如果在割接或迁移过程中,没有新的业务请求经过原主库,那么可以判断原主库可以正常下线。

使用

shell> chmod 755 mysql_sniffer

在 MySQL 5.7 或者 MariaDB 机器上执行( SSH 的 ROOT 权限)

shell> ./mysql_sniffer -p 3306 -r 60

将会抓取 60 秒数据(-r 代表抓取的时间,单位秒),默认会把线上的 SQL 语句( select/insert/update/delete/call )存入 mysql_packet.sql 文件里。

1002 次点击
所在节点    MySQL
0 条回复

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/996157

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX