MySQL を介して WordPress データベースに管理者ユーザーを追加する方法

家の鍵を忘れて外に締め出されたような気分になったことはありますか?WordPressウェブサイトから締め出されるのは、まさにそのような気分になることがあります。特にハッカーが管理者アカウントを削除した場合、非常にイライラします。しかし、心配しないでください、あなたは戻ることができます。

あなたのウェブサイトを、秘密の裏口のある家と考えてください。その裏口があなたのウェブサイトのデータベースであり、通常はMySQLコードを使用してアクセスされます。それは複雑に聞こえるかもしれませんが、舞台裏であなたのウェブサイトに変更を加えるために使用できる一連の指示のようなものです。

この記事では、MySQLを使用してウェブサイトの新しい管理者アカウントを作成する方法を説明します。これは、家の新しい鍵を作るようなものです。そうすれば、ハッカーを締め出し、再びコントロールを取り戻すことができます。

MySQL を介して WordPress データベースに管理者ユーザーを追加する方法

なぜMySQL経由でWordPressデータベースに管理者ユーザーを追加するのか?

ユーザーのサイトがハッキングされ、管理アカウントがデータベースから削除されたという問題に遭遇したことがあります。これにより、彼らは自分の WordPressウェブサイト にアクセスできなくなりました。

WordPressウェブサイトに直接新しい管理者ユーザーを作成することで、彼らがウェブサイトにアクセスできるように支援することができました。これは、ウェブブラウザを使用してMySQLデータベースを管理できるウェブベースのツールであるphpMyAdminを使用して行いました。

ハッカーのせいで、または単にパスワードを忘れたためにWordPress管理画面にアクセスできなくなった場合は、同じことができます。

ただし、MySQLの編集を行う前に、必ずデータベースのバックアップを作成してください。その後、ウェブサイトに再度ログインできるようになったら、ハッキングされたWordPressサイトの修正に関する初心者向けガイドに従う必要があるかもしれません。ハッキングされたWordPressサイトの修正方法(初心者向けガイド)

ということで、MySQL経由でWordPressデータベースに管理者ユーザーを追加する方法を見ていきましょう。

phpMyAdmin を使用して WordPress データベースに管理者ユーザーを追加する

ほとんどの主要なWordPressホスティング会社には、phpMyAdminがプリインストールされています。ホスティングアカウントのcPanelダッシュボードの「データベース」セクションで見つけることができます。

こちらは、Bluehost コントロールパネルからのスクリーンショットです。

cPanelでphpMyAdminを選択する

アイコンをクリックすると、phpMyAdminインターフェイスが開きます。左側の列からWordPressデータベースを選択する必要があります。

その後、phpMyAdminはWordPressデータベース内のすべてのテーブルを表示します。wp_usersテーブルとwp_usermetaテーブルに変更を加えます。

wp_users テーブルと wp_usermeta テーブルを変更します

wp_usersテーブルにユーザーを追加する

まず、wp_users テーブルを見つけてクリックする必要があります。これにより、テーブルに現在リストされているユーザーが表示されます。

下記のスクリーンショットにあるように、デモサイトのテーブルにはユーザーIDが1と2の2つあります。デモサイトに新しいユーザーを作成する際、このIDは一意である必要があるため、番号3を入力します。

新しい管理者ユーザーの情報を挿入できるように、画面上部の「挿入」タブをクリックする必要があります。

挿入タブをクリックします

挿入フォームのフィールドに以下の情報を追加してください。

  • ID: 一意の番号を選択します(例では3を使用します)
  • user_login: ログイン時に使用されるユーザー名
  • user_pass: パスワードを追加し、関数メニューでMD5を選択してください(以下のスクリーンショットを参照)
  • user_nicename: ユーザーのフルネームまたはニックネーム
  • user_email: ユーザーのメールアドレス
  • user_url: あなたのウェブサイトのアドレス
  • user_registered: カレンダーを使用して、ユーザーが登録された日時を選択します
  • user_activation_key: 空白のままにする
  • user_status: これを 0 に設定します
  • display_name: ユーザーのフルネームまたは表示名
新規ユーザーのフィールドに入力する

終了したら、「実行」ボタンをクリックして新しいユーザーを保存してください。

wp_usermeta テーブルにユーザーを追加する

次に、wp_usermetaテーブルを見つけてクリックします。その後、前の手順で行ったように「挿入」タブをクリックします。

次に、挿入フォームに次の情報を追加する必要があります。

  • unmeta_id: ここは空白のままにします(自動生成されます)
  • user_id: 前のステップで使用したユーザーID
  • meta_key: これは wp_capabilities であるべきです
  • meta_value: 次を挿入します: a:1:{s:13:"administrator";s:1:"1";}
新規ユーザーのフィールドに入力する

その後、下にスクロールすると、2行目のフィールドが見つかるはずです。次の情報を追加する必要があります。

  • unmeta_id: ここは空白のままにします(自動生成されます)
  • user_id: 前のステップで使用したユーザーID
  • meta_key: wp_user_level を入力する必要があります
  • meta_value: 10
新規ユーザーのフィールドに入力する

フィールドに情報を入力し終えたら、「実行」ボタンをクリックする必要があります。これで新しい管理者ユーザー名が作成されました!

これで、このユーザーのために指定したユーザー名とパスワードを使用して、WordPress管理画面にログインできるようになります。

ログインしたらすぐに、ユーザー » 全ユーザーに移動し、作成したばかりのユーザー名をクリックする必要があります。

Users » All Users に移動し、New User を編集します

何も変更せずに、ページの一番下までスクロールし、「保存」ボタンをクリックします。

これにより、WordPressは作成したばかりのユーザーをクリーンアップし、必要な追加情報を追加できます。

SQLクエリを使用してWordPressデータベースに管理者ユーザーを追加する

開発者であれば、コードを使用してプロセスを高速化できます。

このSQLクエリをデータベースに挿入するだけです。

INSERT INTO `databasename`.`wp_users` (`ID`, `user_login`, `user_pass`, `user_nicename`, `user_email`, `user_url`, `user_registered`, `user_activation_key`, `user_status`, `display_name`) VALUES ('3', 'demo', MD5('demo'), 'Your Name', 'test@example.com', 'http://www.example.com/', '2022-09-01 00:00:00', '', '0', 'Your Name');
 
 
INSERT INTO `databasename`.`wp_usermeta` (`umeta_id`, `user_id`, `meta_key`, `meta_value`) VALUES (NULL, '3', 'wp_capabilities', 'a:1:{s:13:"administrator";s:1:"1";}');
 
 
INSERT INTO `databasename`.`wp_usermeta` (`umeta_id`, `user_id`, `meta_key`, `meta_value`) VALUES (NULL, '3', 'wp_user_level', '10');

「databasename」を、作業しているデータベースに変更してください。

また、最初の方法で説明したように、他の値を新しいユーザーの希望する値に変更することを忘れないでください。

このSQLクエリをデータベースにドロップしてください

WordPress管理画面からロックアウトされた場合の対処法に関する専門家ガイド

MySQL経由で管理者ユーザーを追加する方法がわかったので、WordPress管理画面にアクセスできなくなった場合にウェブサイトを修正する方法に関する記事をご覧になるかもしれません。

このチュートリアルで、MySQL経由でWordPressデータベースに管理者ユーザーを追加する方法を学べたことを願っています。また、当社の究極のWordPressセキュリティガイドや、一般的なWordPressのエラーとその修正方法のリストもご覧ください。

この記事が気に入ったら、WordPressのビデオチュートリアルについては、YouTubeチャンネルを購読してください。 TwitterFacebookでもフォローできます。

開示:当社のコンテンツは読者によってサポートされています。これは、当社のリンクの一部をクリックすると、当社が手数料を得る可能性があることを意味します。WPBeginnerがどのように資金提供されているか、それがなぜ重要か、そしてどのように私たちをサポートできるかについては、こちらをご覧ください。当社の編集プロセスはこちらです。

究極のWordPressツールキット

無料のツールキットにアクセスしましょう - すべてのプロフェッショナルが持つべきWordPress関連の製品とリソースのコレクションです!

読者とのインタラクション

244 CommentsLeave a Reply

  1. 警告!WordPressデータベースのテーブルプレフィックスが標準のwp_ではなくカスタムである場合、capabilitiesとuser_levelのエントリにそれを使用する必要があります。そうしないと、ダッシュボードへのアクセスに問題が発生します。

    例えば、データベースのテーブルプレフィックスが `wp_abcdef_` の場合、`usermeta` テーブルレコードを挿入する際に、適切なフィールドに `wp_abcdef_capabilities` および `wp_abcdef_user_level` を使用します。

    また、phpmyadminでは混乱しやすく、レコードを追加する際に「実行」ボタンを押したと思っても、実際には押しておらず、もう一度「実行」ボタンをクリックしてしまうことがあります。

  2. これは、サイトにロックアウトされた場合に非常に役立ちます。ちょっとした質問があります。
    最近、サイト用のカスタムプラグインを開発するためにフリーランスの開発者を雇いましたが、彼女は仕事を完了するために管理者アクセスが必要です。
    問題は、これまでに他の人に管理者権限を与えたことがなく、管理者権限を渡すことに少し躊躇していることです。一時的な管理者アカウントを作成する方法、または彼女が管理者権限を持つ時間を制限する方法はありますか?彼女が必要とするアクセス権を与えながら、サイトのセキュリティを維持したいと考えています。ありがとうございます。

  3. このガイドのおかげで、私の人生はずっと楽になりました!
    あなたを知りませんが、大好きです!
    ありがとう!

  4. ユーザーが挿入されました。サイトは認証情報を認識します

    but

    サイトでは管理パネルの使用が許可されていません: /wp-admin

    「申し訳ありませんが、このページにアクセスする権限がありません。」

    これはWordPress 6.4.2 & PHP 8.2 です

  5. 残念ながら、私の場合は機能しません。データベーステーブルにすべて表示されていることを確認しましたが、ウェブサイトではメールアドレスが登録されていないと表示されます。ユーザー名で試すと、認識されないと表示されます。何かアイデアがあれば幸いです!

    • ホスティングプロバイダーと初めて契約した際に、プレースホルダーサイトが設定されていた場合に、複数のデータベースがないか確認することをお勧めします。

      管理者

    • エディターユーザーの場合、管理者アカウントを使用して WordPress のインターフェースから手動で作成することをお勧めします。

      管理者

  6. 説明してくれて本当に嬉しいです。これで私の仕事が大幅に楽になります。

    知識がないと難しかったですが、このチュートリアルでうまくいきました。

    本当にありがとうございます!

  7. 残念ながら、私の場合は機能しません。データベーステーブルにすべて表示されていることを確認しましたが、ウェブサイトではメールアドレスが登録されていないと表示されます。ユーザー名で試すと、認識されないと表示されます。何かアイデアがあれば幸いです!

  8. こんにちは。
    ライブのWordPressサイトをローカルサーバーに移行しようとしています。アップデートが必要なためです。
    しかし、ローカルサーバーに設定した後、ログインできず、この記事を見つけました。
    「SQLクエリを使用してWordPressデータベースに管理者ユーザーを追加する」。私の質問は、このユーザーの追加はライブサーバーで行うべきか、ローカルサーバーで行うべきかということです。
    ありがとうございます。

  9. 完了しましたが、私には機能していません。アカウントを作成しましたが、管理者ではなく購読者アカウントとして表示されます。

  10. ヒントをありがとうございます。本当に効果があり、WordPressの設定について多くのことを知ることができました。

  11. ありがとうございます。これは他のケースでも役立つかもしれません…ローカルのAMPPSでWordPressをインストールしたのですが、何らかの理由で最初の登録者が管理者ではなく購読者の権限を得てしまいました。非常に興味深いです。いずれにせよ、PhpMyAdminとwp_usermeta -> wp_usercapabilities -> “a:1:{s:13:”administrator”;s:1:”1″;}” の修正で解決しました。

  12. こんにちは、情報ありがとうございます。この方法で一般の「ユーザー」としてログインできただけです。管理者ダッシュボードが見えません/アクセスできません。このサイトは、バックアップから新しいドメインに移行したディレクトリサイトです。完全な管理者権限を取得するための提案はありますか?

  13. この素晴らしいSQLの定型文を手に入れるために、年に2〜3回ここに来ています。もう自分のメモに保存しておくべきですね。本当にありがとうございます!

  14. この投稿、本当にありがとうございます!サイトのベースURLを変更して移行した後、たくさんの問題が発生しましたが、この投稿ですべて解決しました。

  15. これらの手順に従って新しいアカウントを確認しましたが、サイトにはまだログインできません。「無効なユーザー」と表示され、パスワードのリセットを試みると、アカウントが存在しないと表示されます。これを修正するための次のステップは何ですか?

    • ユーザーを正しいデータベースに追加したことを確認してください。ホスティングプロバイダーに連絡して確認してもらうこともできます。

      管理者

  16. 1. Please change the post to include information about table prefixes – a problem that appeared quite a few times in the comments and will keep you from succeeding if you just follow the post and have an alternative prefix.
    2. Thanks for the information presented here :-)

  17. ログインはできるがwp-adminが表示されない方へ。これらの手順は完全に正しいわけではありません。
    wp_capabilities の meta_value は実際には a:1:{s:13:”administrator”;b:1;} として設定する必要があります。
    そうしないと、ユーザーにロールが設定されず、wp-admin が表示されなくなります。

  18. こんにちは。私のWordPressウェブサイトは、リモートの開発者によって管理されています。彼は管理者であり、私も管理者です。毎月の契約があり、彼に正当な報酬を支払うつもりです。アクセスを維持し、万が一の場合にウェブサイトを守るために、どのような対策ができますか?助けていただけますか?よろしくお願いします。

    • サイトのバックアップを作成してください。ホスティング料金を支払っている限り、サイトを復元できます。

      管理者

  19. こんにちは。
    これを書いてくれてありがとう!指示を探していたのは私だけではないことがわかりました。ユーザーは作成され、「パスワードリセット」リンクをクリックでき、システムからメールも届きますが、ログインできません。「usermeta」テーブルが他のユーザーのものと異なっていることに気づきました。私のものは「first_name」などではなく、「closedpostboxes_attachment」で始まっています。その理由は何でしょうか?
    j

    • そのテーブルは、あなたが閉じたメタボックス用です。テーブルが表示される順序は問題を引き起こすべきではありません。

      管理者

  20. こんにちは!
    すべてのプロセスを実行しましたが、ダッシュボードにログインすると、「WordPressへようこそ」セクションしか表示されず、管理エリアには他に何も表示されません。

    お願い、助けてもらえませんか?

    • Your hosting provider may have customized their login area, there is normally an advanced section you can go to or reach out to your host and they should be able to assist :)

      管理者

  21. WPブログサイトにロックアウトされてしまいました。新しい管理者を作成してログインはできますが、ダッシュボードにはログインできません。代わりに、右上に自分の名前と管理者番号が表示され、ログアウトボタンがあるメインのブログページに移動します。管理者/ダッシュボードエリアにアクセスするにはどうすればよいですか?

  22. Hello,
    Well, this is embarrassing but… would anyone be able and kind enough to help me solve the father of problems? – wp_users table gone/missing… :(
    Thank you in advance.

    • そのテーブルがデータベースにない場合は、ホスティングプロバイダーに連絡して、データベースのバックアップを復元できるか確認してください。

      管理者

  23. こんにちは!チュートリアルをありがとうございます。
    すべての手順を実行しましたが、問題は同じままです。wp-adminにログインしようとすると、「申し訳ありませんが、このページにアクセスすることはできません。」というメッセージが表示されます。この問題を解決する方法をご存知でしたら、大変感謝いたします。
    ありがとうございます。

  24. UpdraftPlusでデータベースをバックアップし、それを復元した後、すべての管理者アクセスを失いました。これらの指示に従いましたが、アクセス権がないというエラーが引き続き表示されます。助けてください!

  25. あなたはまさに伝説です!フォーラムの役に立たない提案を3時間試した後、あなたは成功しました、ありがとう!

  26. 情報ありがとうございます!
    しかし、管理者アカウントを挿入した後、サイトにログインできません。
    「保護」ボタンが表示され、WPダッシュボードへのログインを妨げています。
    助けてください!

  27. うまくいきませんでした。「申し訳ありませんが、このページにアクセスする権限がありません。」というメッセージが表示されます。wp-config.phpを確認したところ、プレフィックスは「wp_」でしたが、それでもうまくいきません。何かアイデアはありますか?

  28. 本当にありがとうございます。この投稿は非常に役立ちました。プラグインによって管理アカウントが顧客に設定されてしまい、購入時にユーザーロールを何であれ顧客に変更するように設定していました。管理ロールにも影響するとは知りませんでした。

  29. ユーザーはログインできるのにダッシュボードが利用可能にならない一般的な理由は何ですか? DBに多くのメタキー値が見られます

  30. 本当にありがとうございます。
    今朝、私のWordPressサイトがハッキングされ、wp-adminにログインできなくなりました。「ユーザーが見つかりません」というエラーが出ていました。この方法でHostGatorアカウントの問題を解決しました。
    本当に感謝しています。書面での説明は素晴らしいですが、ビデオはもっとゆっくりで、より詳細だと良かったです。

  31. 皆さん、こんにちは。

    うまくいきませんでした…

    ダッシュボードにアクセスできないというエラーメッセージが表示されます

    !!ヘルプ !!

    • それは簡単だよ、相棒。データベース名に何が書かれているか見てみろ。
      例えば、私の場合は wprn_capabilities、wprn_user_level..だった。

  32. これについてさらに調べましたが、ビデオを何度も見ても、まだうまくいきません。

    私の場合、WPサイトをあるホスティングアカウントから別のホスティングアカウントに移行した後、管理者アクセスを失いました。

    古い管理者ログインでログインできますが、ログインしても何もできません。

    mysqlを使用して、新しいユーザーを作成し、メタデータを追加しようとしました。新しいユーザーでログインしようとすると、パスワードが間違っていると表示されます。パスワードを忘れた場合」と言ってみましたが、msqlでユーザーを作成した際に入力したメールアドレスにメールは届きませんでした。

    mysqlでは、古い管理者ユーザーがまだ存在していることがわかります。対応するuserIDを入力して、そのユーザーに管理者権限を与えるためのメタデータを追加しようとしました。しかし、何も変わりませんでした。そのユーザーでログインすることはできますが、何もアクセスできません。何かアドバイスがあれば、大歓迎です!

返信する

コメントを残していただきありがとうございます。すべてのコメントは、当社のコメントポリシーに従ってモデレーションされますので、ご了承ください。メールアドレスは公開されません。名前フィールドにキーワードを使用しないでください。個人的で有意義な会話をしましょう。