我正在运行一个8GB RAM,四核SSD固态服务器。
根据New Relic的说法,大多数数据库查询都很快,但是一行只更新一行一行需要16秒。
我的查询是:
UPDATE user SET ad=$currentAdSet WHERE ckey='$_COOKIE[ckey]'
我正在使用mysql_query("")
php函数来执行查询。
Mu user
表有大约43000行和一个简单的结构。
为什么这个查询需要这么长时间?有什么想法吗?
答案 0 :(得分:2)
尝试在ckey
上添加索引并再次检查时间。我会建议读一些索引。
BTW,直接使用cookie值可能会导致SQL注入
答案 1 :(得分:2)
您可以尝试使用EXPLAIN
查看是什么让它变得如此之慢。然后,根据您看到的瓶颈,使用索引。
答案 2 :(得分:0)
确保 ckey 已编入索引,如果不需要,则广告未编入索引。
第一个将允许更快的记录选择,第二个更快的更新
希望这会有所帮助