====== MySQL上でWordPressのネットワーク管理者を変更 ====== WordPressマルチサイトのネットワーク管理者のパスワードは元より、アカウント名すらも忘れ途方に暮れたので、データベースを直接弄ってどうにかしたメモ。 WordPress 4.8.15で確認。試行錯誤の結果なので間違ってたらごめんちゃい。 テーブル名やmeta_key名にはwp-config.phpで指定したプレフィックスが付いてたりするので、いい塩梅で読み替えてください。 ===== wp_usermetaテーブル ===== wp_usermetaテーブルで、ネットワーク管理者にしたいユーザーの情報を書き換える。全ユーザーのメタデータが直列に格納されているので、nicknameあたりを目印にする。 ^ meta_key ^ meta_value ^ 備考 ^ | wp_capabilities | a:1:{s:13:”administrator”;s:1:”1″;} | | | wp_user_level | 10 | | | wp_user-settings | hidetb=1&editor=html&libraryContent=browse&mfold=o | これは書き換えなくても大丈夫かも | ===== wp_sitemetaテーブル ===== site_adminsの値を書き換えるわけだが、一見すると意味不明な値である。 例えば ''a:1:{i:0;s:7:"nwadmin";}'' こんな値が入ってた場合、それぞれの意味は下表のようになる。 * a:1 * 要素が1つの配列(array) * i:0;s:7:"nwadmin"; * これが要素の一塊 * i:0 * 1番目の要素(index = 0) * s:7 * 後続のユーザー名の文字数 * "nwadmin" * ユーザー名 よって、書き換える箇所はs:7の部分とユーザー名。 正しくない値を入れた場合、ネットワーク管理者に反映されないだけで然程危険性はなさそうだけど、書き換えは自己責任でオナシャス。