web-dev-qa-db-ja.com

wp_optionsテーブルに重複行があり、主キー/オートインクリメントが削除されました

私のWordpressの開発インスタンスでは、wp_optionsに重複行が含まれていることに気付きました。さらに調査した結果、primary_keyとauto_incrementの制約がoption_id列から削除されたことがわかりました。

誰もがこれがどのように起こり得るのか知っていますか?私は確かに自分自身を入れたり外したりしなかった。いくつかのアイデア:

  • データベースのインポートが正しくありません
  • プラグインがデータベースを変更しました
  • Wordpressのアップデートに失敗しました

私は同じ問題を説明する this wp.stackexchangeの質問を見つけましたが、その答えはそもそもそれがどうやって起こったのかを説明するようには思われません。

この問題の引き金となったものをブレインストーミングするためのご協力ありがとうございました。将来的には起こらないようにしたいのですが。

2
mrtsherman

何度も掘り下げた後、何が起こったのかがわかったと思います。その手がかりは、私がそれがそれらの主キーを失ったのがwp_optionsとすべてのアルファベット順に続くテーブルであることに気づいたという事実から来ました。

インポート時には、最初にテーブルが作成されます。次に、それらすべてのテーブルをアルファベット順に調べ、主キーとauto_incrementフラグを適用します。キーとフラグの適用は、wp_optionsの直前に中断され、失敗は段階的に減少しました。

2
mrtsherman

これらの規則が満たされるときだけWordPressプラグインを使ってください:

  • WPプラグインはWordpressプラグインライブラリから来ています。 https://wordpress.org/plugins/
  • WPプラグインはWordPressによって承認されています。
  • WPプラグインは最新のものです。
  • あなたはWPプラグインの作者であり、それをサポートしています。

あなたがこれらの規則に従わないとき、それはあなたのウェブサイトが問題とマルウェア攻撃に対して開かれたままにする。

0
Frank Thoeny