MySQL で prepared statement を使うと query cache が効かないらしいので調査。
MySQL 5.0と 5.1.17 より前(=5.1.16以前)では、サーバサイドのPrepared Statementを使うとQuery Cacheが使われない。
参考:
MySQL :: MySQL 5.0 Reference Manual :: 7.5.4 The MySQL Query Cache
MySQL :: MySQL 5.1 Reference Manual :: 7.5.4 The MySQL Query Cache
[PHP] prepared statement - Usenet Forums
でも、PDOのPrepared StatementはQuery Cacheを使っていると言う人もいる?(MySQLは5.0)
PHPのPDO::mysql。prepared statementはquery cacheを使っている! | まつぼっくりんご
また、PDOのPrepared Statementはそんなに有用じゃないから、$pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, true) した方がいいとか、PDO::query() を使った方がいいと言う人もいる。
Using PDO::MYSQL ? - Evil, as in Dr.(→ 機械翻訳:PDOを使うこと:MYSQLに?-悪(博士の場合のように)。
PHP: PDO::prepare - Manual
試したかったが、手元の環境は最新の5.1だったから普通にCacheが使われていた。
0 件のコメント:
コメントを投稿