MySQLのユーザー関連のコマンドのサンプルです。
目次
サンプル | ユーザを確認する |
ユーザを作成する | |
ユーザ権限を確認する | |
権限を与える | |
パスワードを変更する | |
ユーザー名を変更する | |
ユーザを削除する |
ユーザを確認する
select host,user from mysql.user;
ユーザ情報は、mysql.userテーブルから取得します。
Host | User |
---|---|
% | testuser1 |
127.0.0.1 | root |
::1 | root |
localhost | pma |
localhost | root |
ユーザを作成する
create user ユーザー名 [identified by 'パスワード'] |
create user testuser1 identified by 'abc123';
ユーザー名testuser1、パスワードabc123のユーザを作成します。
ユーザ権限を確認する
show grants for ユーザー名; |
show grants for testuser1;
testuser1ユーザのユーザ権限を確認します。
実行結果
GRANT USAGE ON *.* TO `testuser1`@`%` IDENTIFIED BY PASSWORD '*6691484EA6B50DDDE1926A220DA01FA9E575C18A'
権限を与える
grant all privileges on *.* to ユーザー名 Identified by 'password' with grant option; |
grant all privileges on *.* to testuser1
Identified by 'password' with grant option;
testuser1ユーザに全ての権限を与えています。
実行結果
GRANT ALL PRIVILEGES ON *.* TO `testuser1`@`%` IDENTIFIED BY PASSWORD '*2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19' WITH GRANT OPTION
show grantsコマンドで確認した結果です。ALL PRIVILEGESと表示されています。
以下は、MySQLのGrant構文のリンクです。
https://dev.mysql.com/doc/refman/5.6/ja/grant.html
パスワードを変更する
set password for ユーザー名@"ホスト名"=password('変更後のパスワード'); |
set password for testuser1@"%"=password('pass');
ユーザー名testuser1のパスワードをpassに変更しています。%はホスト名を指します。
MySQLログイン時にパスワードが異なっていた場合は以下のエラーメッセージが表示されます。ERROR 1045 (28000): Access denied for user 'testuser1'@'localhost' (using password: YES)
ユーザー名を変更する
rename user 変更前のユーザー名 to 変更後のユーザー名 |
rename user testuser1 to testuser2;
ユーザー名testuser1をtestuser2に変更しています。
ユーザを削除する
drop user ユーザー名 |
drop user testuser2;
testuser2ユーザを削除します。
関連の記事