0

需要一些见解。慢查询日志正在慢慢扩展,出现这样的错误。我是分析这些的新手,但似乎这些查询并不一定很慢。

服务器是否可能在这些时间超载或备份?任何其他想法表示赞赏。(查看 rows_examined、lock_time 和 query_time)

# Time: 130427 13:05:10
# User@Host: acctname_member[acctname_member] @ localhost []
# Query_time: 8.702061  Lock_time: 0.000059 Rows_sent: 0  Rows_examined: 1
UPDATE Notification SET nextFile = IF(nextFile = 999, 100, nextFile + 1);

# Time: 130427 13:05:21
# User@Host: acctname_member[acctname_member] @ localhost []
# Query_time: 6.796559  Lock_time: 0.000039 Rows_sent: 0  Rows_examined: 1
UPDATE check_it SET accomp = 'In Process', verbose = '258', delta = '0 -atl (1)' WHERE Num = '162615';

# Time: 130427 15:37:53
# User@Host: acctname_member[acctname_member] @ localhost []
# Query_time: 6.350998  Lock_time: 0.000033 Rows_sent: 0  Rows_examined: 1
UPDATE User SET mobileOS = 'iPhone 6.1.3', monthlyLogin = monthlyLogin + 1, lastVisit = NOW() WHERE empNum = 387;

注意:这些查询每天运行数百次,但很少出现在慢速列表中。

4

1 回答 1

0

在得出查询“慢”的结论之前,有许多因素需要识别。

  • 当服务器负载较重时,查询在日志中出现的频率会比负载不高时更频繁,因此您应该根据一般系统活动评估查询执行时间。

  • 如果您的服务器使用该--log-queries-not-using-indexes 选项运行,则慢查询日志还将包含在不使用任何索引的情况下执行的查询。

  • EXPLAIN此外,使用该语句查看查询优化器如何处理这些查询也没有什么坏处。

对于第一个,您可以定期使用该SHOW PROCESSLIST语句。

于 2013-04-28T01:58:41.540 回答