【MySQL】ユーザー作成・権限付与コマンド
- ユーザー作成
CREATE USER 'username'@'from_domain(ipaddress)' IDENTIFIED BY 'password';
例(ユーザー名:hoge@localhost パスワード:hogeのユーザーを登録する)
CREATE USER 'hoge'@'localhost' IDENTIFIED BY 'hoge';
- 権限付与
GRANT 権限 ON レベル(対象DB or Table) TO 対象ユーザー;
- 主な権限
- all / ALL PRIVIREGES...全ての権限を与える
- create...テーブルを作成する権限を付与する
- alter...テーブルを変更する権限を付与する
- drop...テーブルを削除する権限を付与する
- index...インデックスを作成/削除する権限を付与する
- select,update,insert,delete,truncate...各テーブル操作の権限を付与する
例(hoge@localhostというユーザーがhogeというパスワードでアクセスしてきたら、hogeというDB内の全てのリソースに全ての権限を与える)
GRANT ALL ON hoge.* TO hoge@localhost IDENTIFIED BY 'hoge';
- 補足
MySQL8.0からは未作成のユーザーに権限付与することは出来ない。 MySQL5.7まではGRANT文でユーザー作成も可能だったが、MySQL8.0で実行するとエラー(1064 (42000))となる。