パーマリンク | 2008年06月29日 04:50
いっつも忘れるGRANT構文メモ。MySQLへの新規ユーザ追加はGRANT ステートメント利用が推奨されている。
GRANT 権限 ON データベース名.テーブル名 TO ユーザ名@ホスト名 IDENTIFIED BY パスワード;
全てのデータベース、テーブルに対してすべての処理を行える。(スーパーユーザ)
GRANT ALL ON *.* TO username@localhost IDENTIFIED BY 'passwd';
一般ユーザは大体こんな感じか。
GRANT ALTER, CREATE, DELETE, DROP, INDEX, INSERT, SELECT ON usertable.* TO username@localhost IDENTIFIED BY 'passwd';
ユーザ追加後、更新しないと反映されない。
FLUSH PRIVILEGES;
設定可能な権限は「4.4.1. GRANT および REVOKE の構文」のとおり。
| ALL [PRIVILEGES] | WITH GRANT OPTION 以外のすべての権限を設定 |
|---|---|
| ALTER | ALTER TABLE の使用を許可 |
| CREATE | CREATE TABLE の使用を許可 |
| CREATE TEMPORARY TABLES | CREATE TEMPORARY TABLE の使用を許可 |
| DELETE | DELETE の使用を許可 |
| DROP | DROP TABLE の使用を許可 |
| EXECUTE | ストアドプロシージャの使用を許可(MySQL 5.0) |
| FILE | SELECT ... INTO OUTFILE および LOAD DATA INFILE の使用を許可 |
| INDEX | CREATE INDEX および DROP INDEXの使用を許可 |
| INSERT | INSERT の使用を許可 |
| LOCK TABLES | SELECT 権限を持つテーブルで LOCK TABLES の使用を許可 |
| PROCESS | SHOW FULL PROCESSLIST の使用を許可 |
| REFERENCES | 将来のために予約 |
| RELOAD | FLUSH の使用を許可 |
| REPLICATION CLIENT | スレーブおよびマスタのサーバーを知る権利を付与 |
| REPLICATION SLAVE | レプリケーションのスレーブに必要(マスタからバイナリログを読み取るため) |
| SELECT | SELECT の使用を許可 |
| SHOW DATABASES | SHOW DATABASES によりすべてのデータベースが表示される |
| SHUTDOWN | mysqladmin shutdown の使用を許可 |
| SUPER | 最大接続数に達していても接続を 1 つだけ許可し、コマンド CHANGE MASTER、KILL thread、mysqladmin debug、PURGE MASTER LOGS、および SET GLOBAL の実行を許可 |
| UPDATE | UPDATE の使用を許可 |
| USAGE | ``権限なし'' のシノニム |
| GRANT OPTION | WITH GRANT OPTION のシノニム |
/ 金額 : ¥ 3,129