MySQL允许你创建多个用户帐户并授予适当的权限,以便用户可以连接和管理数据库,如果不再需要用户帐户,则最好删除用户权限或完全删除用户帐户。本文介绍如何删除MySQL/MariaDB用户帐户的方法。安装请参考如何在Ubuntu上安装MySQL/MariaDB、在Ubuntu 18.04/18.10系统上安装MariaDB 10.3.13稳定版本。
DROP USER声明 在MySQL中,你可以使用DROP USER语句删除一个或多个用户并分配权限,该语句的一般语法如下: DROP USER [IF EXISTS] USER_ACCOUNT [, USER_ACCOUNT] ... 例如,要删除brian@localhost用户帐户登录到MYSQL shell并运行: DROP USER 'brian@localhost'; 成功后,命令将返回: Query OK, 0 rows affected (0.00 sec) 要在单个命令中删除多个用户帐户,请运行DROP USER语句,然后运行要按空格分隔的要删除的用户: DROP USER 'brian@localhost' 'any@localhost'; 如果你尝试删除不存在的用户帐户并且未使用IF EXISTS子句,则该命令将返回错误。如果你尝试删除的用户当前已登录,则不会关闭用户会话,并且用户将能够运行查询,直到会话结束,会话关闭后,用户将被删除,它将无法再登录MySQL服务器。不会自动删除用户创建的数据库和对象。
删除MySQL用户帐户(适用MariaDB) 下面具体说明如何列出和删除MySQL用户帐户。 首先,使用root或其他管理用户登录MySQL shell,为此,请键入以下命令: sudo mysql 如果你使用旧的本机MySQL身份验证插件以root身份登录,请运行以下命令并在出现提示时输入密码: mysql -u root -p 以下命令在MySQL shell中执行。 MySQL在mysql数据库的用户表中存储有关用户的信息,使用以下SELECT语句获取所有MySQL用户帐户的列表: mysql> SELECT User, Host FROM mysql.user; 输出应该如下所示:
注:在MySQL中,用户帐户由用户名和主机名部分组成,jabba@localhost和jabba@10.10.8.8是不同的用户帐户。 假设不再需要chewbacca@localhost用户帐户,我们希望将其删除。 要删除用户运行: mysql> DROP USER 'chewbacca'@'localhost' 成功后,命令将返回: Query OK, 0 rows affected (0.00 sec) 该命令将删除用户帐户及其权限,至此,现在用户已被成功删除。
结论 要删除MySQL用户帐户,请使用DROP USER语句,后跟要删除的用户的名称。
相关主题 |