@[toc]
问题描述
开启慢SQL设置long_query_time=0.1为啥会统计的sql却存在小于100毫秒的sql?
我的使用场景描述
我采用执行sql修改配置文件,也就是采用“临时生效操作步骤”开启慢SQL,比如我设置的是超时100毫秒就记录sql,但是发现的现象是100毫秒、10毫秒、20、50毫秒的都会被记录如图1,这明显就不对,于是我查了chatGPT它给出的答案是如图2,我觉得它给的答案说服不了我,就算有执行时间精度问题,100毫秒和10毫秒在计算机中差距已经很大了好吧,于是我在想会不会是“临时生效操作步骤”的方案不生效,必须采用“永久生效方式”才行,于是我做了如下实验。
如图1 如图2我想验证下“永久生效方式”是否能100%保存出慢sql,也就是超过100毫秒的sql,结果如图3,发现所有的都是100毫秒之外的SQL,那就证明咱们的猜想是正确的的。
结论
推线使用“永久方式(也就是修改配置文件方式)”会有效。