“设置时间戳”如何成为慢速查询?

时间:2010-05-14 09:02:15

标签: mysql performance replication

我的慢查询日志中包含以下条目:

# Query_time: 1.016361  Lock_time: 0.000000 Rows_sent: 0  Rows_examined: 0
SET timestamp=1273826821;
COMMIT;

我想set timestamp命令是由复制发出的,但我不明白set timestamp如何接管一秒钟。关于如何解决这个问题的任何想法?

2 个答案:

答案 0 :(得分:14)

Timestamp是MySQL中的数据类型和内置函数。你想用以下的陈述做什么?

SET timestamp=1273826821;

UPD :很抱歉,我不知道使用过的MySQL黑客攻击。

似乎SET TIMESTAMP用作solution to exclude some queries from the slow log

OP正在使用Microslow patch来增强慢查询日志中的统计信息,并且该语句在InnoDB表上的语句之前是通用的。

因此,OP问题的答案是COMMIT语句是慢查询而不是SET TIMESTAMP

答案 1 :(得分:7)

设置时间戳出现在每个慢查询日志中,因此请跳过此行; commit是它出现在慢查询中的原因;

由于许多提交进入慢速日志,因此IO机器IO可能是问题,因为IO是提交的瓶颈。

监控DB CPU IO等待值,不能高于1 /核心数。例如,如果8个核心,IO等待应该小于12%。

iotop可用于调试哪个进程正在读/写IO,而iostat可用于监视IO。