GreatSQL社区

搜索

[待回复] 慢查询为什么没有按照long_query_time这个参数记录sql语句

35 7 3 天前
本帖最后由 wrh 于 2025-8-11 17:05 编辑

我的库版本是:Server version: 8.0.32-26 GreatSQL (GPL), Release 26

其中慢查询参数如下:

mysql> show variables like '%slow%';
+-----------------------------------+---------------+
| Variable_name                     | Value         |
+-----------------------------------+---------------+
| log_slow_admin_statements         | OFF           |
| log_slow_extra                    | OFF           |
| log_slow_filter                   |               |
| log_slow_rate_limit               | 1             |
| log_slow_rate_type                | session       |
| log_slow_replica_statements       | ON            |
| log_slow_slave_statements         | ON            |
| log_slow_sp_statements            | ON            |
| log_slow_verbosity                |               |
| max_slowlog_files                 | 0             |
| max_slowlog_size                  | 0             |
| slow_launch_time                  | 2             |
| slow_query_log                    | ON            |
| slow_query_log_always_write_time  | 10.000000     |
| slow_query_log_file               | /tmp/slow.log |
| slow_query_log_use_global_control |               |
+-----------------------------------+---------------+
16 rows in set (0.02 sec)


mysql> show variables like '%long_query%';
+-----------------+-----------+
| Variable_name   | Value     |
+-----------------+-----------+
| long_query_time | 10.000000 |
+-----------------+-----------+
1 row in set (0.01 sec)

我设置的long_query_time =10,应该日志里面记录的应该是大于10秒的查询被记录,为什么日志里面只有几微妙也会被记录?
记录的信息:# Query_time: 0.004923  Lock_time: 0.000001  Rows_sent: 21  Rows_examined: 6137  Rows_affected: 0  Bytes_sent: 1682
按照里面写法,应该Query_time才4微妙吧?
是我那里理解有问题吗?有大佬知道吗

全部回复(7)
yejr 3 天前
看下是不是这个参数影响的 https://greatsql.cn/docs/8.0.32- ... tsql-slow-log.html#关于-log-queries-not-using-indexes

另外,也请把slow query log信息贴全了,例如下面这样

  1. # Query_time: 0.006571  Lock_time: 0.000004 Rows_sent: 14  Rows_examined: 43 Thread_id: 21 Errno: 0 Killed: 0 Bytes_received: 58 Bytes_sent: 289 Read_first: 2 Read_last: 0 R
  2. ead_key: 13 Read_next: 9 Read_prev: 0 Read_rnd: 0 Read_rnd_next: 15 Sort_merge_passes: 0 Sort_range_count: 0 Sort_rows: 0 Sort_scan_count: 0 Created_tmp_disk_tables: 0 Creat
  3. ed_tmp_tables: 0 Start: 2025-07-17T14:47:42.308420+08:00 End: 2025-07-17T14:47:42.314991+08:00 Schema:  Rows_affected: 0
  4. # Tmp_tables: 0  Tmp_disk_tables: 0  Tmp_table_sizes: 0
  5. # InnoDB_trx_id: 0
  6. # Full_scan: Yes  Full_join: Yes  Tmp_table: No  Tmp_table_on_disk: No
  7. # Filesort: No  Filesort_on_disk: No  Merge_passes: 0
  8. #   InnoDB_IO_r_ops: 2  InnoDB_IO_r_bytes: 32768  InnoDB_IO_r_wait: 0.004966
  9. #   InnoDB_rec_lock_wait: 0.000000  InnoDB_queue_wait: 0.000000
  10. #   InnoDB_pages_distinct: 22
  11. SET timestamp=1752734862;
  12. SELECT SCHEMA_NAME FROM INFORMATION_SCHEMA.SCHEMATA;
复制代码


敏感数据可以脱敏处理
wrh 前天 09:49
yejr 发表于 2025-8-11 17:27
看下是不是这个参数影响的 https://greatsql.cn/docs/8.0.32-27/2-about-greatsql/4-2-greatsql-slow-log.h ...

哦,是的,他语句因为数据量少,也都没索引,又设置了这个参数。
yejr 前天 10:41
wrh 发表于 2025-8-12 09:49
哦,是的,他语句因为数据量少,也都没索引,又设置了这个参数。

你的这个场景已更新到FAQ案例中了:https://greatsql.cn/docs/8.0.32-27/11-faq/5-faq-others.html#_21-为什么有些很快的sql操作也被记录到slow-query-log中
wrh 昨天 10:18
yejr 发表于 2025-8-12 10:41
你的这个场景已更新到FAQ案例中了:https://greatsql.cn/docs/8.0.32-27/11-faq/5-faq-others.html#_21- ...

这个还有一个问题,他是设置了log_queries_not_using_indexes这个参数
mysql> show variables like 'log_queries_not_using_indexes'
    -> ;
+-------------------------------+-------+
| Variable_name                 | Value |
+-------------------------------+-------+
| log_queries_not_using_indexes | ON    |
+-------------------------------+-------+
1 row in set (0.00 sec)

但是他也设置了log_throttle_queries_not_using_indexes这个,应该每分钟就只有5条会被记录呀,但是他slow文件刷的非常快,不止记录5条
mysql> show variables like 'log_throttle_queries_not_using_indexes'
    -> ;
+----------------------------------------+-------+
| Variable_name                          | Value |
+----------------------------------------+-------+
| log_throttle_queries_not_using_indexes | 5     |
+----------------------------------------+-------+
1 row in set (0.01 sec)
yejr 昨天 10:49
wrh 发表于 2025-8-13 10:18
这个还有一个问题,他是设置了log_queries_not_using_indexes这个参数
mysql> show variables like 'log_ ...

是同样的SQL每分钟记录5条,不是所有的SQL记录5条,你看下是哪种情况
wrh 昨天 11:14
yejr 发表于 2025-8-13 10:49
是同样的SQL每分钟记录5条,不是所有的SQL记录5条,你看下是哪种情况

相同语句,是不是指条件里面的值也要相同?
yejr 昨天 12:13
wrh 发表于 2025-8-13 11:14
相同语句,是不是指条件里面的值也要相同?

是的
wrh

3

主题

0

博客

22

贡献

新手上路

Rank: 1

积分
36

合作电话:010-64087828

社区邮箱:greatsql@greatdb.com

社区公众号
社区小助手
QQ群
GMT+8, 2025-8-14 02:43 , Processed in 0.021868 second(s), 16 queries , Redis On.
快速回复 返回顶部 返回列表