背景
我们在现网的情况经常会查看程序中执行的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