【MySQL/MariaDB】ユーザー追加と権限割り当て

【MySQL/MariaDB】ユーザー追加と権限割り当て

MySQL/MariaDB のサーバを立ち上げたら最初に設定するユーザーの追加と権限の割り当て方法です。

ユーザー情報

ユーザーの追加

CREATE USER [ユーザ名] IDENTIFIED BY '[パスワード]';

すべてのホストからアクセス可能な hoge ユーザーをパスワード’123456’で追加する場合は下記

CREATE USER hoge@'%' IDENTIFIED BY '123456';

localhost からアクセス可能な hoge ユーザーをパスワード’123456’で追加する場合は下記

CREATE USER hoge@'localhost' IDENTIFIED BY '123456';

追加されたユーザーの確認

SELECT user, host FROM mysql.user;

下記のように追加されたユーザーの一覧が表示される

+------+-----------------------+
| user | host                  |
+------+-----------------------+
| root | 127.0.0.1             |
| root | ::1                   |
|      | localhost             |
| hoge | localhost             |
+------+-----------------------+

追加したユーザーの削除

hoge@’localhost’で追加したユーザーを削除する場合

DROP USER hoge@'localhost';

権限

ユーザー権限の追加

‘yamaimo’データベースに対して hoge@’localhost’からの接続ですべての権限を追加する場合

GRANT ALL ON yamaimo.* TO hoge@'localhost';

‘yamaimo’データベースに対して hoge@’%’からの接続で「SELECT、UPDATE、INSERT、DELETE」を許可する場合

GRANT SELECT,INSERT,UPDATE,DELETE ON hoge.* TO hoge@'%';

ユーザー権限の削除

hoge ユーザーのすべての権限を削除する

REVOKE ALL PRIVILEGES, GRANT OPTION FROM hoge@'localhost';

権限設定の反映

設定を反映するには下記を実行

FLUSH PRIVILEGES;

変更

パスワードの変更

hoge@'localhost'のパスワードを'987654'に変更する場合

SET PASSWORD FOR hoge@'localhost'=PASSWORD('987654');