1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

[初心者向け] MySQL8.0の権限の確認および付与・削除する方法について解説

1
Last updated at Posted at 2024-05-08

概要

DBを特定のユーザで直接操作したり、フレームワークのマイグレーション機能経由で操作する際にはDBの権限設定について理解する必要があるので

  • 権限の種類
  • 権限の確認方法
  • 権限の付与方法
  • 権限の削除方法

について解説していきたいと思います

前提

  • 今回はMySQL8.0系を例に説明します

権限の種類

MySQLに限らず、DBにはさまざまな権限が存在します
よく見かける権限だけ列挙していきます
他の権限を見たい場合は以下の記事を参照してください

SELECT

  • DBのテーブルから行を選択できる権限

INSERT

  • DBのテーブルに行を挿入できる権限

UPDATE

  • データベース内のテーブルで行を更新できる権限

DELETE

  • データベース内のテーブルから行を削除できる権限

CREATE

  • 新しいデータベースおよびテーブルを作成できる権限

REFERENCES

  • 外部キー制約を作成できる権限

DROP

  • 既存のDB、テーブル、ビューを削除できる権限

ALL, ALL PRIVILEGES

  • 全ての権限が付与される

権限の確認

権限を確認する際は以下のようにユーザ名を指定して確認します

show grants for 'dev_user'@'%';
+------------------------------------------------------------------------------------------------------------------+
| Grants for dev_user@%                                                                                            |
+------------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO `dev_user`@`%`                                                                             |
| GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, REFERENCES, ALTER, INDEX ON `dev_database`.* TO `dev_user`@`%` |
+------------------------------------------------------------------------------------------------------------------+

権限の付与

GRANTを使って権限を付与できます
付与する権限はGRANTの後ろに記載します
今回はdev_databaseの全てのテーブルにREFERENCEの権限を付与しています

GRANT REFERENCE ON dev_database.* TO 'dev_user'@'%';

権限の削除

REVOKEを使って権限を付与できます
削除する権限はREVOKEの後ろに記載します
今回はdev_databaseの全てのテーブルからREFERENCEの権限を削除しています

REVOKE REFERENCE ON dev_database.* FROM 'dev_user'@'%';

参考

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?