MySQL 資料一覧
ユーザを追加する
2007/12/23更新
対応バージョン: 5.0.51
MySQLのユーザ(アカウント)はCREATE USERやGRANTにて行うのが一般的である。
ここでは例としてデータベースにアクセスする権限によって3種類のユーザを作成する。
super
localhost及び任意のホスト(%)からでもサーバに接続できる完全なスーパーユーザ。
パスワードあり
接続元となるホスト(localhost, %)毎に複数のユーザを作成する必要あり
mysql> GRANT ALL PRIVILEGES ON *.* TO 'super'@'localhost' -> IDENTIFIED BY '<パスワード>' WITH GRANT OPTION; mysql> GRANT ALL PRIVILEGES ON *.* TO 'super'@'%' -> IDENTIFIED BY '<パスワード>' WITH GRANT OPTION; mysql> SELECT user,password,host FROM user WHERE user = 'super'; +-------+-------------------------------------------+-----------+ | user | password | host | +-------+-------------------------------------------+-----------+ | super | *0D8825DC371A083787E8919946F4FFDECE2F4DDF | localhost | | super | *80E73635CAEDFEE27398D5CBCBAB02EB88BD3C9B | % | +-------+-------------------------------------------+-----------+
admin
localhostからのみ接続できる管理者ユーザ。
パスワードあり
管理権限は「RELOAD」と「PROCESS」
この権限はmysqladmin reload、mysqladmin refresh、mysqladmin flush-xxx、mysqladmin processlistといった管理系のコマンドを実行できる。
mysql> GRANT RELOAD,PROCESS ON *.* TO 'admin'@'localhost' -> IDENTIFIED BY '<パスワード>' WITH GRANT OPTION; mysql> SELECT user,password,host FROM user WHERE user = 'admin'; +-------+-------------------------------------------+-----------+ | user | password | host | +-------+-------------------------------------------+-----------+ | admin | *C20003C6C9FA015E80D75D36F54C4450D98F7828 | localhost | +-------+-------------------------------------------+-----------+
guest
localhostからのみ接続できるゲストユーザ。
パスワードなし
管理権限は「USAGE」
この権限を設定すると全てのグローバル権限が「N」(権限なし)になる。
mysql> GRANT USAGE ON *.* TO 'guest'@'localhost'; mysql> SELECT user,password,host FROM user WHERE user = 'guest'; +-------+----------+-----------+ | user | password | host | +-------+----------+-----------+ | guest | | localhost | +-------+----------+-----------+