私はワードプレスのインストールを所有していて、3.4.1に更新しました。
アップグレードの後、私は私のワードプレスに非常に奇妙な減速をもたらしました。
結局、私は
define('SAVEQUERIES', true);
私のテーマのfooter.phpで次のコードと組み合わせて私のWP - config.phpで
global $wpdb;
echo "<pre>";
print_r($wpdb->queries);
echo "</pre>";
私は多くのクエリはありませんが(49個のクエリがあります)、
ここで私はあなたにいくつかの質問をお見せしましょう:
/* Execution time 7.0095062E-5 */
SELECT t.*, tt.* FROM wp_terms AS t INNER JOIN wp_term_taxonomy AS tt ON t.term_id = tt.term_id WHERE tt.taxonomy IN ('category') AND tt.count > 0 ORDER BY t.name ASC
/* Execution time 5.3167343E-5 */
SELECT post_id, meta_key, meta_value FROM wp_postmeta WHERE post_id IN (77375,77379,77381)
/* Execution time 9.2029572E-5 */
SELECT wp_posts.* FROM wp_posts WHERE ID IN (77381,77379,77375)
ほとんどのクエリでは、クエリは単純で複雑ではありません。そのクエリが非常に遅いのは、私には想像できません。
WordPressデータベースは、約60,000レコードを含み、percona上で実行されています。
その問題について何かアイデアはありますか、そしてどのように私はそれを修正できますか?
60,000件のレコードがある場合は、投稿/ページのリビジョンを削除してみてください。これらは実際に累積し、過度に長いクエリを引き起こします。データベースのサイズが90%減少し、パフォーマンスが大幅に向上しました。
Phpmyadminまたはコマンドラインから以下のクエリを実行してから最適化します。
DELETE a,b,c
FROM wp_posts a
LEFT JOIN wp_term_relationships b ON (a.ID = b.object_id)
LEFT JOIN wp_postmeta c ON (a.ID = c.post_id)
WHERE a.post_type = 'revision'
あなたのWebホストにも話してください。 MySQLかあなたのCPUがダウンしているのかもしれません。
あなたは正しいです...パフォーマンスに問題はないはずです、そしてあなたのデータベースはキャッシュのためにいくつかの改良が必要です。
W3 Total Cache を実行していますか - これはあなたのサイトのパフォーマンスにすぐに役立つはずです。サーバ。
それから - あなたのSQLデータベースの バックアップを取ってください そしてまたあなたは テーブルを最適化して修復するべきです .