3万件以上の投稿があるサイトのサーバーを管理しています。サイトをWP 4.9.9から現在のWP 5.0.2に更新しようとしました。
更新は正しく機能しているように見えますが、その後、バックエンドは非常に遅くなりますが、フロントエンドは正常に動作し続けます。
更新後mytop
は多くのALTER TABLE wp_posts ... post_password ...
クエリが実行されていることを示し、一番上はデータベース時間の大部分を占めるALTER TABLEのコピー操作です。
1日実行させようとしましたが、終了せず、バックエンドでのダウンタイムを長くする余裕がないため、バックアップからインストール全体を回復し、WP 4.9.9。
MySQLの多くのALTER TABLE
ステートメントが、新しいテーブルの作成、コピー、古いテーブルの削除、新しいテーブルの名前変更として実装されていることを知っています。
ただし、WP 5の更新動作に関するドキュメントが見つかりませんでした。実際にWPを実行していることを知って驚いたでしょう。私。グーグルを適切にグーグルしていないか、またはWPではなく、何らかのプラグインである可能性が高いです。
WPは、WP 5へのアップグレード時にwp_posts
テーブルを実際に変更しますか?そして、もしそうなら、私は問題を回避するために何ができますか?
私は盲目か何かを見落としているのかもしれませんが….
私はこれらのリリースのどれでもその主題に関連したチケットを見ません:
私はコード内にDB操作も見ていません。
だから私はこれらのALTERSがWPに付属しているとは思わない。
多分いくつかのプラグイン(またはテーマ)がこれに責任があります。
私があなただったら、私は自分のサイトのコピーを作成し、すべてのプラグインを無効にしてデフォルトテーマを設定してからWP更新を実行します。それから私はプラグインがこれらのALTERSを引き起こしているのを見つけようとします。
もう1つの方法は、あなたのサイトのコードをgrepして、そのコードの中のALTERを検索することです。 ALTERはあまり一般的ではないので、多分あなたは何かを見つけるでしょう。
問題はコアではなくプラグインにあると思います(そのバグがあったことはほとんど不可能です)。問題を起こすコードがあります。
以下を行ってください。
すべてのプラグインを無効にする
最新のWPにアップグレードしてみてください。