背景
我们在现网的情况经常会查看程序中执行的sql是不是正确或者参数是否正确,然后复制处理到mysql 中再次执行,如果开启程序的sql打印功能,可能需要加入日志的输出和sql的打印级别等,直接影响效率 本文主要通过修改mysql的配置来跟踪sql
https://mp.weixin.qq.com/s/OTbi5cuezFAx77zifhtPfg
方案
查看MySQL的配置


show variables like '%log_out%';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| log_output    | TABLE |
+---------------+-------+

mysql> show variables like '%general_log%';
+------------------+------------------------------------+
| Variable_name    | Value                              |
+------------------+------------------------------------+
| general_log      | OFF                                |
| general_log_file | /home/data/mysql/localhost.log |
+------------------+------------------------------------+

开启mysql记录功能


SET GLOBAL log_output = 'TABLE';  
SET GLOBAL general_log = 'ON';

查看sql日志


SELECT * from mysql.general_log ORDER BY  event_time DESC;

发现argument为blob数据类型,无法查看

图片

blob转换为字符串


SELECT CAST(argument AS CHAR)  as text from mysql.general_log;
文档更新时间: 2023-08-19 20:13   作者:admin