よく忘れてしまうMYSQLのユーザー作成〜権限付与

Date:

Share post:

基本的なところと思いますが、自分が数を行っていないためか(phpmyadminに頼ってしまいがち)、よく忘れてしまうので備忘の意味を含めて書きます。

DBを作成するコマンドは

CREATE ●●●●●(DB名);

次にユーザーを作成しますが、パスワードを生成するため

pwmake 64;

pwmakeは、OSのパスワード認証と関係が深いコマンドで、オプションを指定しなくてもOSのパスワードポリシーに従ったパスワードを生成できるらしいです。コマンドのパラメタにエントロピービット数(解読の難易度)を渡します。

生成したパスワードを使用してユーザーを作成します。

CREATE USER 'ユーザー名'@'%' identified by 'パスワード';

‘%’はホスト名のワイルドカード指定です。

生成されたユーザーを確認する、ユーザー一覧表示コマンドは

SELECT user, host FROM mysql.user;

次にユーザーに権限を付与します。今回はデータベース単位で全権限の場合です。

GRANT ALL PRIVILEGES ON DB名.* TO ユーザー名;

権限のレベルは

  • グローバルレベル
  • データベースレベル
  • テーブルレベル
  • カラムレベル
  • ルーチンレベル
  • プロキシユーザー権限

の6種類になります。静的な権限はいろいろ(CREATE,DROP,SELECT etc)あります。
(全部覚えていないです・・・。)

Related articles

Laravel:mockとexec

昨今mockの話が続いていますが、今...

Laravel:mockにおける引数と戻り値の関係...

遅まきながら新年明けましておめでとう...

Laravel:8.xのルーティング

前回の記事でLaravelに関しては...

Laravel:テストにおける認証の罠

昨今、ちょいちょい引っ掛かったネタな...