0

我正在使用 PDO 从我的 MySQL 数据库中获取结果。

如果我只执行执行语句,则需要大约8 seconds. (连续做同样的事情 350 次。)

添加fetchAll()语句时,最长可达28 秒。这是正常行为吗?

我在 web 服务器和 db 服务器之间进行了网络测试速度,它在附近,87 Mbits/sec所以这不是问题。有任何想法吗?

4

1 回答 1

1

8 秒的执行时间也长得离谱 - 这表明您没有正确索引表。因此,从表中获取数据需要很长时间。它也可能使用临时表。

确保您在“搜索”中使用了任何字段,或者在已编入索引的联接表中用作搜索键。正确的索引有点棘手 - 但要测试,在查询之前添加“EXPLAIN”并打印出结果 - 每个表都会有一行。如果您有任何“使用 WHERE”或“创建临时表”,那么您可能需要通过在这些表上添加索引来删除这些内容。

于 2013-01-18T13:49:16.653 回答