我需要运行 PHP 循环总共 100, 000 次(每个脚本运行大约 10, 000 次),每个循环大约有 5 个 MySQL 更新。当我运行循环 50 次时,需要 3 秒。当我运行循环 1000 次时,大约需要 1300 秒。正如您所看到的,随着更多的更新,MySQL 的速度明显减慢。
这是一个更新示例:
mysql_query("UPDATE table SET `row1`=`row1` +1 WHERE `UniqueValue`='5'");
这是从 PHP 随机生成的,但我可以将它存储在一个变量中并每 n 次循环运行它。
有没有办法让 MySQL 和 PHP 以一致的速度运行(PHP 是否存储隐藏变量?),或者拆分脚本以便它们这样做?
注意:我运行此程序是出于开发目的,而不是出于生产目的,因此只有 1 台计算机访问数据。
最佳答案
使用prepared statements 。它们的两个主要好处之一是重复查询更加高效。
关于php - MySQL 数千次更新,速度变慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2679294/