SQLコマンドで直接データベースを確認し、「wordpress」に登録されているユーザの確認方法と、パスワードの変更方法です。(毎回手順を調べているので自分用のメモ)
ユーザ情報の確認方法
「wordpress」用に作成したデータベースの下記テーブルを確認することで、登録されているユーザの情報を確認することが出来ます。
- wp_users 登録ユーザ一覧情報
- wp_usermeta 登録ユーザの権限情報などの詳細情報
データベースのテーブル接頭辞を「wp_」で作成しているものとします。
それ以外の場合は「wp_」部分を適宜読み替えてください。
wp_users
「wp_users」テーブルを確認することで、「wordpress」登録されているユーザの情報を取得することができます。
ユーザ情報として取得できる項目として下記カラムが存在しています。
- ID
- user_login
- user_pass
- user_nicename
- user_email
- user_url
- user_registered
- user_activation_key
- user_status
- display_name
データ取得方法
実際にデータを確認するために下記コマンドで「MariaDB」にログインします。
接続するユーザは、「MariaDB」のrootユーザか、確認するデータベースの管理権限を持ったユーザでログインしてください。
データベースの管理権限を持ったユーザとパスワードについては、「wp-config.php」の「DB_USER」と「DB_PASSWORD」に設定されています。
mysql -u ユーザ -p
あとは、下記SQLを実行することでデータを取得することが出来ます。
DB名は「wp-config.php」の「DB_NAME」の値となります。
SELECT * FROM DB名.wp_users;
実行例
実際に「servermemo」という「wordpress」用DBの「wp_useres」テーブルを確認してみると、下記のように登録されているユーザ情報が表示されます。(ユーザ名やメールアドレスなどは伏字としています)
※SQL分の最後の「\G」は表示結果を縦に表示させるために使用しています。
MariaDB [(none)]> SELECT * FROM servermemo.wp_users \G
*************************** 1. row ***************************
ID: 1
user_login: xxxxxx
user_pass: $P$BbdJW4oJEkSaA9uoiqHblx0vfYoR/a.
user_nicename: xxxxxx
user_email: xxxxxx@xxxxx.xxx
user_url:
user_registered: 2018-10-24 12:07:05
user_activation_key:
user_status: 0
display_name: xxxxxxx
*************************** 2. row ***************************
ID: 2
user_login: yyyyyy
user_pass: $P$BSoeiXmrTKuG4jzHW7FlYtXaXASjNU.
user_nicename: yyyyyy
user_email: yyyyyy@yyyyy.yyy
user_url:
user_registered: 2018-10-25 03:26:24
user_activation_key:
user_status: 0
display_name: yyyyy
2 rows in set (0.00 sec)
パスワードはMD5形式で暗号化されています。
wp_usermeta
「wp_usermeta」テーブルにはユーザに関する色々な設定が下記カラムに格納されています。
- umeta_id
- user_id
- meta_key
- meta_value
ちなみに、「meta_key」の「wp_capabilities」に「administrator」と表示されているユーザが、「wordpress」の管理者権限を持つユーザになります。
データ取得方法
「wp_usermeta」テーブルの情報は下記SQLで表示させることが出来ます。
SELECT * FROM DB名.wp_usermeta;
実行例
実際に「wp_usermeta」テーブルの中身を確認してみます。(ユーザの名前は伏せています)
※SQL分の最後の「\G」は表示結果を縦に表示させるために使用しています。
MariaDB [(none)]> SELECT * FROM servermemo.wp_usermeta \G
*************************** 1. row ***************************
umeta_id: 1
user_id: 1
meta_key: nickname
meta_value: xxxxxx
*************************** 2. row ***************************
umeta_id: 2
user_id: 1
meta_key: first_name
meta_value:
*************************** 3. row ***************************
umeta_id: 3
user_id: 1
meta_key: last_name
meta_value:
*************************** 4. row ***************************
umeta_id: 4
user_id: 1
meta_key: description
meta_value:
*************************** 5. row ***************************
umeta_id: 5
user_id: 1
meta_key: rich_editing
meta_value: true
*************************** 6. row ***************************
umeta_id: 6
user_id: 1
meta_key: syntax_highlighting
meta_value: true
*************************** 7. row ***************************
umeta_id: 7
user_id: 1
meta_key: comment_shortcuts
meta_value: false
*************************** 8. row ***************************
umeta_id: 8
user_id: 1
meta_key: admin_color
meta_value: fresh
*************************** 9. row ***************************
umeta_id: 9
user_id: 1
meta_key: use_ssl
meta_value: 0
*************************** 10. row ***************************
umeta_id: 10
user_id: 1
meta_key: show_admin_bar_front
meta_value: true
*************************** 11. row ***************************
umeta_id: 11
user_id: 1
meta_key: locale
meta_value:
*************************** 12. row ***************************
umeta_id: 12
user_id: 1
meta_key: wp_capabilities
meta_value: a:1:{s:13:"administrator";b:1;}
*************************** 13. row ***************************
umeta_id: 13
user_id: 1
meta_key: wp_user_level
meta_value: 10
##### 以下省略 #####
管理者権限を持ったユーザを調べる方法
管理者権限を持ったユーザを探したい場合は、「meta_key」の「wp_capabilities」に「administrator」と表示されているユーザを探すことで、「wordpress」の管理者権限を持つユーザを探すことが出来ます。
実際に、「servermemo」という「wordpress」用DBの「wp_usermeta」テーブルを確認してみます。
SELECT * FROM servermemo.wp_usermeta WHERE meta_key LIKE '%nickname%' OR meta_key LIKE 'wp_capabilities' ;
+----------+---------+-----------------+---------------------------------+
| umeta_id | user_id | meta_key | meta_value |
+----------+---------+-----------------+---------------------------------+
| 1 | 1 | nickname | xxxxxx |
| 12 | 1 | wp_capabilities | a:1:{s:13:"administrator";b:1;} |
| 19 | 2 | nickname | yyyyyy |
| 30 | 2 | wp_capabilities | a:1:{s:6:"author";b:1;} |
+----------+---------+-----------------+---------------------------------+
今回は「nickname」の値も一緒に表示させていますが、「nickname」とログインユーザ名の設定が異なる場合もあるため、より正確にどのユーザが管理者権限を持っているかを確認するためには、「user_id」の値に注目してください。
「user_id」の値は「wp_users」テーブルの「user_id」カラムと対応しているので、見比べることで管理者ユーザを判別することができます。
パスワード変更
ユーザのパスワードが分からなくなった場合は、下記コマンドでパスワードの再設定を行うことが出来ます。
管理者ユーザのパスワードを忘れてしまった場合などに使用してください。
UPDATE DB名.wp_users SET user_pass = MD5('新しいパスワード') WHERE user_login = 'パスワード変更ユーザー';
パスワード変更例
「tamotamo」というユーザのパスワードを「dbpass」に変更してみます。
MariaDB [(none)]> UPDATE servermemo.wp_users SET user_pass = MD5('dbpass') WHERE user_login = 'tamotamo';
Query OK, 1 row affected (0.01 sec)
Rows matched: 1 Changed: 1 Warnings: 0
これでユーザのパスワードが変更されたので、実際にwordpressにログインできるか確認してみてください。
コメント