我的慢查询日志中包含以下条目:
# Query_time: 1.016361 Lock_time: 0.000000 Rows_sent: 0 Rows_examined: 0
SET timestamp=1273826821;
COMMIT;
我想set timestamp
命令是由复制发出的,但我不明白set timestamp
如何接管一秒钟。关于如何解决这个问题的任何想法?
答案 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。