Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在运行一个 8gb 内存、四核、SSD 云服务器。
根据 New Relic 的说法,大多数数据库查询速度很快,但一个查询只更新一列一行最多需要 16 秒。
我的查询是:
UPDATE user SET ad=$currentAdSet WHERE ckey='$_COOKIE[ckey]'
我正在使用mysql_query("")php 函数来执行查询。
mysql_query("")
Muuser表大约有 43000 行,结构简单。
user
为什么这个查询需要这么长时间?有任何想法吗?
尝试添加索引ckey并再次检查时间。我会建议一些关于索引的阅读。
ckey
顺便说一句,直接使用 cookie 值可能会导致 SQL 注入
您可以尝试使用EXPLAIN. 然后,根据您看到的瓶颈,使用索引。
EXPLAIN
确保ckey已编入索引,如果不需要,广告未编入索引。
第一个将允许更快地选择记录,第二个更快的更新
希望这可以帮助