MySQL监控sql语句

admin 2024年10月7日20:24:48评论12 views字数 854阅读2分50秒阅读模式

为什么要对SQL语句进行监控?

我们在本地搭建环境进行SQL注入的时候,想要知道SQL语句最后执行的结果,拼接是否完成,哪些字符被过滤了。我们可以跟着代码走一遍,但比较繁琐不适合初学者。还有一些我们光有包,没有源码无法调试的情况。

这个时候对SQL语句进行监控,就能解决这个问题。

SQL server

sql server 中有工具sql profile ,可以实时监控sql server中 执行的sql 语句,方便调试bug 或者确认最终生成的sql语句。

这不是本次的重点,简单提一下。如果感兴趣的去网上找资料。

mysql

法一

mysql默认不开启SQL语句监控,当需要开启时,我们可以执行以下命令。

SHOW VARIABLES LIKE "general_log%"; -- off 是关闭,如果是on表示已经开启SET GLOBAL general_log = 'ON'; --开启日志监控。

MySQL监控sql语句

启动后我们执行几条语句来查看

SELECT 1;SELECT 2;SELECT 3;

MySQL监控sql语句

查看文件LAPTOP-TCMJLP81.log

MySQL监控sql语句

法二

也可以让sql语句显示在表中

执行如下命令

SET GLOBAL general_log = 'ON'; --开启日志监控。SET GLOBAL log_output = 'TABLE';SELECT * FROM mysql.general_log ORDER BY event_time DESC

如果查询发现参数值为blob

MySQL监控sql语句

可以执行如下命令

select CAST(argument AS CHAR(10000) CHARACTER SET utf8) from mysql.general_log ORDER BY event_time DESC

MySQL监控sql语句

不用的时候可以关闭日志
SET GLOBAL general_log = 'OFF'; 

参考链接

Mysql中如何对运行中的sql语句监控 (qq.com)

Mysql BLOB、BLOB与TEXT区别及性能影响、将BLOB类型转换成VARCHAR类型 - 温柔的风 - 博客园 (cnblogs.com)

原文始发于微信公众号(进击的HACK):MySQL监控sql语句

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年10月7日20:24:48
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   MySQL监控sql语句https://cn-sec.com/archives/2045315.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息