MySQLおさらい ユーザーの削除

電脳備忘録
たまにしかMySQLはいじらないので、時間があくとキレイさっぱり忘れてしまいます。 悲しいけど、人間の脳は忘れるように出来ているのでこればっかりは仕方ありませんね。

ユーザーの確認

mysql> select user, HOST FROM mysql.user;
ユーザーを削除。あららエラーを返されてしまいました・・・。
mysql> drop ユーザー名;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ユーザー名' at line 1
ユーザーに権限を付与している場合は、権限を剥奪しないとユーザーを削除できないようです。というわけで権限を確認
mysql> SHOW GRANTS FOR 'ユーザー名'@'ホスト名';
+--------------------------------------------------------------------------+
| Grants for ユーザ名@ホスト名                                            |
+--------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'ユーザ名'@'ホスト名' IDENTIFIED BY PASSWORD 'XXX' |
| GRANT ALL PRIVILEGES ON `データベース名`.* TO 'ユーザ名'@'ホスト名'      |
+--------------------------------------------------------------------------+

権限の剥奪

ユーザーは削除するので付与した権限を全て剥奪
revoke all privileges on *.* from  'ユーザ名'@'ホスト名';
権限を確認。権限は剥奪されているようです。
mysql> SHOW GRANTS FOR 'userberryl'@'localhost';
+--------------------------------------------------------------------------+
| Grants for userberryl@localhost                                          |
+--------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'ユーザ名'@'ホスト名' IDENTIFIED BY PASSWORD 'XXX' |
+--------------------------------------------------------------------------+

ユーザの削除

mysql> delete from mysql.user where user='削除するユーザ名' and host='ホスト名';

広告

ブログの維持費に充てるでございます・・・。