MySQL にてデータベースを作成して作業ユーザーに権限を与える

  • mysql の作業は root でやってみる
  • 作業ユーザー名「user」とする

root で mysql にログインしてデータベースを確認する

ログイン

$ mysql -u root -p

確認

> show databases;

+-----------------------+
| Database              |
+-----------------------+
| information_schema    |
| mysql                 |
| performance_schema    |
| sys                   |
+-----------------------+

データベース「db_name」を作成

> create database db_name;
> show databases;

+-----------------------+
| Database              |
+-----------------------+
| information_schema    |
| mysql                 |
| performance_schema    |
| sys                   |
| db_name               |
+-----------------------+

作業ユーザー「user」にデータベース「db_name」の全権限を付与

> GRANT ALL ON db_name.* TO 'user'@'localhost';

細かく権限を付与する

テーブル毎に権限を付与

> GRANT ALL ON db_name.table_name TO 'user'@'localhost';

操作できる権限を細かく設定する

> GRANT SELECT, UPDATE, INSERT, DELETE, DROP ON db_name.* TO 'user'@'localhost';