在 MySQL 数据库中,可以使用 DROP USER 语句删除用户,也可以直接在 mysql.user 表中删除用户以及相关权限。

1. 使用 DROP USER 语句删除普通用户

使用 DROP USER 语句删除用户的语法格式如下:

DROP USER <用户1> [ , <用户2> ]…

其中,用户用来指定需要删除的用户账号。

使用 DROP USER 语句应注意以下几点:

  • DROP USER 语句可用于删除一个或多个用户,并撤销其权限。
  • 使用 DROP USER 语句必须拥有 mysql 数据库的 DELETE 权限或全局 CREATE USER 权限。
  • 在 DROP USER 语句的使用中,若没有明确地给出账户的主机名,则该主机名默认为“%”。

注意:用户的删除不会影响他们之前所创建的表、索引或其他数据库对象,因为 MySQL 并不会记录是谁创建了这些对象。

例 1
下面使用 DROP USER 语句删除用户’test1@‘localhost’。SQL 语句和执行过程如下。

mysql> DROP USER 'test1'@'localhost';
Query OK, 0 rows affected (0.00 sec)

在 cmd 命令行工具中,使用 test1 用户登录数据库服务器,发现登录失败,说明用户已经删除,如下所示。

C:\Users\USER>mysql -h localhost -u test1 -p
Enter password: ****
ERROR 1045 (28000): Access denied for user 'test'@'localhost' (using  password: YES)

2. 使用DELETE语句删除普通用户

可以使用 DELETE 语句直接删除 mysql.user 表中相应的用户信息,但必须拥有 mysql.user 表的 DELETE 权限。其基本语法格式如下:

DELETE FROM mysql.user WHERE Host='hostname' AND User='username';

Host 和 User 这两个字段都是 mysql.user 表的主键。因此,需要两个字段的值才能确定一条记录。

例 2
下面使用 DELETE 语句删除用户’test2’@‘localhost’。SQL 语句和执行过程如下所示。

DELETE FROM mysql.user WHERE Host='localhost'AND User='test2';
Query OK, 1 rows affected (0.00 sec)

结果显示删除成功。可以使用 SELETE 语句查询 mysql.user 表,以确定该用户是否已经成功删除。

5、删除用户(DROP/DELETE USER)相关推荐

  1. 转 Oracle 删除表,oracle 中删除表 drop delete truncate 的区别

    相同点,使用drop delete truncate 都会删除表中的内容 drop table 表名 delete from 表名(后面不跟where语句,则也删除表中所有的数据) truncate ...

  2. Oracle删除用户drop user报错解决方案

    由于开发过程中对数据库的操作比较多,另外也是怕占用资源,决定将数据库所使用用户删除掉,然后可能是资源占用,oracle报错了,提供解决方案: 1.首先将索要删除的用户锁定(这句必须执行): alter ...

  3. mysql 新增 删除用户和权限分配

    1. 新增用户 mysql>insert into mysql.user(Host,User,Password) values("localhost","lionb ...

  4. mysql8.0取消授权_mysql8创建用户、删除用户、授权、取消授权

    注意,以下命令均在数据库mysql中操作use mysql; mysql有密码设置规范,这里修改仅密码长度为4位,仅本次登录有效set global validate_password.policy= ...

  5. mysql创建和删除用户

    1.远程登录mysql mysql -h ip -u root -p 密码 给root用户添加远程登录权限 grant all privileges on *.* to 'root'@'%' iden ...

  6. mysql 创建和删除用户

    1.远程登录mysql mysql -h ip -u root -p 密码 2.创建用户 格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码 ...

  7. mysql 5.6 删除用户_mysql 新增 删除用户和权限分配

    1. 新增用户 mysql>insert into mysql.user(Host,User,Password) values("localhost","lionb ...

  8. 怎么从mysql注册表删除用户_mysql 创建和删除用户

    1.远程登录mysql mysql -h ip -u root -p 密码 2.创建用户 格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码 ...

  9. linux mysql删除用户权限_linuxmysql增加用户,删除用户,以及用户权限_MySQL

    一些基本的命令: 登录: mysql -u username -p 显示所有的数据库: show databases; 使用某一个数据库: use databasename; 显示一个数据库的所有表: ...

  10. linux的mysql如何删除用户_linux mysql增加用户,删除用户,以及用户权限

    一些基本的命令: 登录: mysql -u username -p 显示所有的数据库: show databases; 使用某一个数据库: use databasename; 显示一个数据库的所有表: ...

最新文章

  1. python使用matplotlib可视化棉签图、棉棒图(stem plot)、展示离散而有序的数据
  2. Windows 到 Linux 之旅: 第 8 部分. 备份与恢复
  3. Bootstrap栅格布局系统的特点
  4. CAD—定义委托异步添加实体
  5. 排序算法时间复杂度、空间复杂度、稳定性整理
  6. if...elif...else...fi和case...esac的脚本条件判断式
  7. 带有示例的Python File readline()方法
  8. PowerDesigner(三)-企业架构模型
  9. Path variable [contentHash:8] not implemented in this context: styles.[contentHash:8].css
  10. java序列化层数_java序列化详解
  11. expect以及rsync实现远程连接自动推送密码
  12. Oracle11使用现在数据库文件,oracle11g 重装操作系统后,如何利用原有oracle表空间文件还原数据库...
  13. 服务器指令学习记录-----ska暑期训练
  14. python3 荣誉证书(奖状)批量打印
  15. 梯形公式和辛普森的Matlab
  16. 入行数据分析要知道什么是概括性度量
  17. 程序员修仙之路-数据结构之设计一个高性能线程池
  18. 三、道阻且长之单例模式
  19. 使用SOCK_PACKET编写ARP请求程序的例子
  20. leetCode1103

热门文章

  1. ML之NB:利用NB朴素贝叶斯算法(CountVectorizer/TfidfVectorizer+去除停用词)进行分类预测、评估
  2. BC:带你温习并解读《中国区块链技术和应用发展白皮书》—区块链标准体系框架
  3. 成功解决AttributeError: type object 'scipy.interpolate.interpnd.array' has no attribute '__reduce_cython
  4. 成功解决打包时不能import自定义的包或库出现运行exe时No module named 缺少包
  5. Funny:还是程序猿会玩——弹幕炸天学AI和区块链,玩起来!弹慕君,你也值得拥有!
  6. TF之DNN:利用DNN【784→500→10】对MNIST手写数字图片识别数据集(TF自带函数下载)预测(98%)+案例理解DNN过程
  7. Py之SnowNLP:SnowNLP中文处理包的简介、安装、使用方法、代码实现之详细攻略
  8. OS_CORE.C(3)
  9. jQuery $.ajax传递数组的traditional参数传递必须true 对象的序列化
  10. 正在研究d2010的dcu格式