
それぞれユーザー管理のコマンド(構文)は、SQL などを発行して行います。
phpMyAdmin などの GUI ツールを使っても良いのですが、ターミナルで MySQL にログインする方法が一番便利だと思います。
MAMP でインストールした MySQL にターミナルからログインする方法は、以下のエントリをご覧ください。
関連記事:MAMP でインストールした MySQL にターミナルでログインする方法
MySQL にログインをしたら、mysql というデータベースに接続をしておきます。
mysql > connect mysql;
既存ユーザーの確認
MySQL では、ユーザーの管理を MySQL の「user」テーブルで行っているので、そのテーブルの内容を参照する事で、既存のユーザー(登録されているユーザー)を確認する事ができます。
ターミナルで MySQL にログインして以下のコマンドを実行します。
mysql > SELECT host, user FROM user;
既存ユーザーの権限の確認
登録されているユーザーがそれぞれどんな権限があるのかを確認してみます。
ターミナルで MySQL にログインして以下のコマンドを実行します。
mysql> SHOW GRANTS FOR ユーザー名;
ユーザー名には、調べたいユーザーの名前を入れます。
参考:MySQL :: MySQL 5.1 リファレンスマニュアル :: 12.5.4.16 SHOW GRANTS 構文
結果には、GRANT 構文の内容がそのまま表示されます。GRANT 構文については以下のエントリをご覧ください。
関連記事:WordPress 用の MySQL ユーザーの権限レベル
ユーザーの追加
新規にユーザーを登録してみます。ターミナルで MySQL にログインして以下のコマンドを実行します。
GRANT 権限レベル ON データベース名.テーブル名 TO ユーザ名@ホスト名 IDENTIFIED BY 'パスワード';
※ パスワードのみシングルクォーテーション(’)でくくります。
権限レベル | 追加するユーザーに与える権限 |
データベース名 | どのデーターベースにアクセスを許すのかの指定 |
テーブル名 | どのテーブルにアクセスを許すのかの指定 |
ユーザー名 | 追加するユーザー名 |
ホスト名 | どのホストからの接続を許すのかの指定 |
パスワード | 追加するユーザーのパスワード |
例えば、全てのデータベースの全てのテーブルにアクセスできるようにするには、「データベース名.テーブル名」の部分を「*.*」とします。
特定のデータベース(例えば、test_db)の全てのテーブルにアクセスできるようにするには、「データベース名.テーブル名」の部分を「test_db.*」とします。
また、どのホストからでもアクセスできるようにするには、ホスト名に「%」を指定します。例えば、「ユーザー名@ホスト名」の部分を「new_user@%」とします。
コマンド実行例
GRANT ALL PRIVILEGES ON wordpress.* TO new_user@localhost IDENTIFIED BY 'pass';
このコマンドでは、new_user というユーザーのパスワードを pass に設定しつつ、全ての権限を、wordpress データベース内の全てのテーブルに付与し、localhost から、それらにアクセスできるユーザーを追加しています。
※ 権限に「ALL PRIVILEGES」を指定する事で全ての権限を付与できます。
WordPress 用の MySQL ユーザーを作成(追加)する場合については、WordPress 用の MySQL ユーザーの権限レベル をご覧ください。
参考:MySQL :: MySQL 5.1 リファレンスマニュアル :: 12.5.1.3 GRANT 構文
ユーザーの削除
ユーザーを削除するには、MySQL にログインして以下のコマンドを実行します。
mysql > DELETE FROM データベース名.user WHERE user='ユーザー名';
また、以下のコマンドで権限も削除します。
mysql > REVOKE ALL PRIVILEGES ON * . * FROM ユーザー名;
参考:MySQL :: MySQL 4.1 リファレンスマニュアル :: 4.4.6 MySQL ユーザの削除
パスワードの変更
MySQL へログインして以下のコマンドを実行します。
mysql > SET PASSWORD FOR ユーザー名@"ホスト名"=password('変更後のパスワード');
参考:MySQL :: MySQL 5.1 リファレンスマニュアル :: 12.5.1.6 SET PASSWORD 構文
でわでわ。