简单的MySQL查询16秒

时间:2013-03-31 19:16:59

标签: php mysql linux

我正在运行一个8GB RAM,四核SSD固态服务器。

根据New Relic的说法,大多数数据库查询都很快,但是一行只更新一行一行需要16秒。

我的查询是:

UPDATE user SET ad=$currentAdSet WHERE ckey='$_COOKIE[ckey]'

我正在使用mysql_query("") php函数来执行查询。

Mu user表有大约43000行和一个简单的结构。

为什么这个查询需要这么长时间?有什么想法吗?

3 个答案:

答案 0 :(得分:2)

尝试在ckey上添加索引并再次检查时间。我会建议读一些索引。

BTW,直接使用cookie值可能会导致SQL注入

答案 1 :(得分:2)

您可以尝试使用EXPLAIN查看是什么让它变得如此之慢。然后,根据您看到的瓶颈,使用索引。

答案 2 :(得分:0)

确保 ckey 已编入索引,如果不需要,则广告未编入索引。

第一个将允许更快的记录选择,第二个更快的更新

希望这会有所帮助