MySQLのデータベース作成、ユーザー作成、アクセス権限設定
mysqladminでデータベース作成の際に文字コードを設定しようとしたらうまくいかないので、mysqlクライアントを利用する。
CREATE DATABASE {database} CHARACTER SET utf8;
ユーザーの追加。
CREATE USER '{user}'@'%' IDENTIFIED BY '{password}';
ユーザー権限の設定。
該当データベースしか処理させない。
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, CREATE TEMPORARY TABLES, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EXECUTE ON {database} . * TO '{user}'@'%' IDENTIFIED BY '{password}';
これで該当データベースのみしかアクセスできない。
該当データベース名でのみcreate(drop) databaseは可能はです。
phpMyAdminで管理以外の権限を選定しましたが、実際不要な権限も多いと思います。
FILEはグローバルレベルのため、以下のエラーがでて権限付与できません。
ERROR 1221 (HY000): Incorrect usage of DB GRANT and GLOBAL PRIVILEGES
カテゴリー: 日記