在 MySQL中,通常会创建多个普通用户来管理数据库,但假如发现某些用户是没有必要的,就可以将其删除,删除用户有两种方式,接下来将针对这两种方式进行详细的讲解。
1、利用 DROP USER 语句删除用户
DROP USER 语句与 DROP DATABASE 语句有些类似,假如要删除某个用户,只需在 DROP USER 后面指定要删除的用户信息即可。DROP USER 语句删除用户的语法格式如下:
- DROP USER 'username'@'hostname'[,'username'@'hostname'];
复制代码 上述语法格式中,username表现要删除的用户,hostname表现主机名,DROP USER语句可以同时删除一个或多个用户,多个用户之间用逗号隔开。值得留意的是,利用DROP USER 语句来删除用户时,必须拥有 DROP USER 的权限。利用 DROP USER 语句删除用户 userl,SQL 语句如下:
- DROP USER 'user1'@'localhost';
复制代码 上述语句执行乐成后,可以通过SELECT语句验证用户是否被删除,运行结果如下:
- mysql> SELECT Host, User, authentication_string FROM mysql.user;
- +-----------+------------------+------------------------------------------------------------------------+
- | Host | User | authentication_string |
- +-----------+------------------+------------------------------------------------------------------------+
- | localhost | mysql.infoschema | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
- | localhost | mysql.session | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
- | localhost | mysql.sys | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
- | localhost | root | *A3687CD1574820D919D6DF2AC07CA3AA9E5438BE |
- | localhost | user2 | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257 |
- | localhost | user3 | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257 |
- +-----------+------------------+------------------------------------------------------------------------+
- 6 rows in set (0.00 sec)
复制代码 从运行结果可以看出,user 表中已经没有 user1用户了,因此分析该用户被乐成删除了。
2、利用 DELETE 语句删除用户
DELETE语句不仅可以删除普通表中的数据,还可以删除 user 表中的数据,利用该语句删除 user 表中的数据时,只需指定表名为 mysql.user,以及要删除的用户信息即可。同样地,在利用 DELETE 语句时必须拥有对 mysql.user 表的 DELETE 权限。
DELETE 语句删除用户的语法格式如下:
- DELETE FROM mysgl.user WHERE Host='hostname' AND User='username';
复制代码 上述语法格式中,mysql.user 参数指定要操作的表,WHERE 指定条件语句,Host 和 User 都是 mysql. user 表的字段,这两个字段可以确定唯一的一条记载。利用 DELETE 语句删除用户 user2,SQL 语句如下:
- DELETE FROM mysql.user WHERE Host='localhost' AND User='user2';
复制代码 上述语句执行乐成后,可以通过 SELECT语句查询用户是否被删除,查询结果如下:
- mysql> SELECT Host, User, authentication_string FROM mysql.user;
- +-----------+------------------+------------------------------------------------------------------------+
- | Host | User | authentication_string |
- +-----------+------------------+------------------------------------------------------------------------+
- | localhost | mysql.infoschema | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
- | localhost | mysql.session | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
- | localhost | mysql.sys | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
- | localhost | root | *A3687CD1574820D919D6DF2AC07CA3AA9E5438BE |
- | localhost | user3 | *23AE809DDACAF96AF0FD78ED04B6A265E05AA257 |
- +-----------+------------------+------------------------------------------------------------------------+
- 5 rows in set (0.00 sec)
复制代码 从运行结果可以看出,user 表中已经没有 user2 用户了,因此分析该用户被乐成删除了。由于直接对 user表进行操作,执行完下令后必要利用“ FLUSH PRIVILEGES; ”语句重新加载用户权限。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |