(rootユーザのみでも対応可能であるため、追加しなくても良い)
GRANT ALL PRIVILEGES ON *.* TO superuser@localhost IDENTIFIED BY 'password' WITH GRANT OPTION; FLUSH PRIVILEGES;
上記コマンドを実行するとユーザ名が「superuser」、パスワードが「password」、全てのDBに対してアクセス可能であり、全権限(CREATE、ALTER、SELECT、INSERT等)を持ち、権限付与を行える権限ユーザが作成されます。
【付与可能な権限】
権限 | 権限内容 | 権限内容 | ||||
---|---|---|---|---|---|---|
GLOBAL | DB | TABLE | COLUMN | ROUTINE | ||
ALL [PRIVILEGES] | GRANT OPTION以外の全権限 | ○ | ○ | ○ | × | × |
ALTER | ALTER TABLEの使用権限 | ○ | ○ | ○ | × | × |
ALTER ROUTINE | ストアドルーチンの変更、ドロップ権限 | ○ | ○ | × | × | × |
CREATE | CREATE TABLEの使用権限 | ○ | ○ | ○ | × | × |
CREATE ROUTINE | ストアドルーチンの作成権限 | ○ | ○ | × | × | × |
CREATE TEMPORARY TABLES | 一時テーブルの作成権限 | ○ | ○ | × | × | × |
CREATE USER | ユーザの作成、変更、ドロップ権限、ユーザの権限変更の権限 | ○ | × | × | × | × |
CREATE VIEW | VIEWの作成権限 | ○ | ○ | ○ | × | × |
DELETE | 削除権限 | ○ | ○ | ○ | × | × |
DROP | テーブルのDROP権限 | ○ | ○ | ○ | × | × |
EVENT | イベントスケジューラのイベント作成権限 | ○ | ○ | × | × | × |
EXECUTE | ストアドルーチンの実行権限 | ○ | × | × | × | × |
FILE | FILEの読み書き権限(入出力) | ○ | × | × | × | × |
INDEX | INDEXの作成、ドロップ権限 | ○ | ○ | ○ | × | × |
INSERT | データの登録権限 | ○ | ○ | ○ | ○ | × |
LOCK TABLES | SELECT権限を持つテーブルのLOCK権限 | ○ | ○ | × | × | × |
PROCESS | SHOW FULL PROCESSLISTの使用権限 | ○ | × | × | × | × |
REFERENCES | 未使用 | ○ | ○ | ○ | ○ | × |
RELOAD | FLUSHの実行権限 | ○ | × | × | × | × |
REPLICATION CLIENT | SHOW MASTER STATUS / SHOW SLAVE STATUSの実行権限 | ○ | × | × | × | × |
REPLICATION SLAVE | レプリケーションのスレーブとしての動作権限 | ○ | × | × | × | × |
SELECT | SELECT権限 | ○ | ○ | ○ | ○ | × |
SHOW DATABASES | SHOW DATABASESの実行権限 | ○ | × | × | × | × |
SHOW VIEW | SHOW CREATE VIEWの実行権限 | ○ | ○ | ○ | × | × |
SHUTDOWN | mysqladmin shutdownの実行権限 | ○ | × | × | × | × |
SUPER | CHANGE MASTER / KILL / PURGE MASTER LOGS / SET GLOBALの実行権限 | ○ | × | × | × | × |
TRIGGER | トリガの作成、ドロップの実行権限 | ○ | ○ | ○ | × | × |
UPDATE | UPDATEの実行権限 | ○ | × | × | × | × |
USAGE | 権限なし | ○ | × | × | × | × |
GRANT OPTION | 権限付与実行権限 | ○ | ○ | ○ | × | × |
- *.*:全てのDB(1つ目の*がDB名、2つ目の*がテーブル名)
- WITH GRANT OPTION:GRANT構文の実行権限(権限を与えるコマンド)
- 「FLUSH PRIVILEGES;」はGRANT構文を実行した後に必ず実行します。
次回は、DBの作成方法等について、記載します。
WEBアプリケーション関連 人気連載リンク
データベースの基礎が学べるSQL基礎講座
SQL基礎 連載
より実践的なWEBアプリ開発講座!Bootstrap活用を学ぶなら・・
魁!小野の塾 連載