2php : MySQLにユーザを追加する

 

ユーザの追加

root権限を持つ管理者でもMySQLにアクセスすることはできますが、ユーザを追加した方がメリットがあります。それは、root権限に与えられている権限があまりにも壮絶だからです。テーブルの削除もデータベースの削除も行うゴジラの様なことも行うことが可能だからです。ユーザを追加することによって、root権限には与えられない強力な権限を防ぐことができます。

例えば、MySQL内でrootになってから次のようなデータベースレベルでアクセス可能なユーザを追加してみます。なお、コマンドの終了時には、\g;を入力する必要があります。

  • ユーザ名 : tamakichi
  • パスワード : hiropon777
  • ホスト名 : localhost
  • アクセスを許可するデータベース名 : OmuraDB
$ CREATE DATABASE OmuraDB;
$ GRANT ALL ON OmuraDB.* TO tamakichi@localhost IDENTIFIED BY "hiropon777";

これで新しいユーザを追加することができました。

CREATE DATABASE文は、新規でデータベースを作成するコマンドデータベースを作成するコマンドです。今回は OmuraDB というデータベースを作ってみました。

GRANT文の項目は、ユーザ『tamakichi』を追加した上に、アクセスできるデータベースを『OmuraDB』にしかアクセスできない様にし、パスワード『hiropon777』も設定しました。

このようにユーザを追加したら最後に次のようなコマンドを入力して、ユーザテーブルをリフレッシュします。

$ FLUSH PRIVILEGES;

ユーザをリフレッシュ(FLUSH)したところで、ユーザ『tamakichi』はMySQLサーバのデータベース『OmuraDB』に接続することができます。ユーザ『tamakichi』でアクセスするには次の様にコマンドを入力する必要があります。

# /usr/local/mysql/bin/mysql -u tamakichi -p
$ Enter Password hiropon777