数据库:SQL分类之DCL详解

1.管理用户

1.查询用户

use mysql ;

select * from user ;

2.创建用户

create user '用户名'@'主机名' identified by '密码' ;

例:

复制代码
//创建用户itcast ,只能够在当前主机local host访问,密码123456
create user 'itcast'@'localhost' identified by '123456';

//创建用户itcasts ,可以在任意主机访问该数据库,密码123456
create user 'itcasts'@'%' identified by '123456';// %代表任意
3.修改用户密码

alter user '用户名'@'主机名' identified with mysql_native_password by '新密码' ;

例:

复制代码
alter user 'itcast'@'local host' identified with mysql_native_password by '12345678' ;
4.删除用户

drop user '用户名'@'主机名 ;

例:

复制代码
drop user 'itcast'@'local host' ;

注意:

  • 主机名可以用%通配
  • 这类SQL开发人员操作的比较少,主要是DBA(Database Administrator 数据库管理员)使用。

2.权限控制

MySQL中定义了很多种权限,但是常用的就以下几种:

|----------------------|------------|
| 权限 | 说明 |
| all , all privileges | 所有权限 |
| select | 查询数据 |
| insert | 插入数据 |
| update | 修改数据 |
| delete | 删除数据 |
| alert | 修改表 |
| drop | 删除数据库/表/视图 |
| create | 创建数据库/表 |

1.查询权限

show grants for '用户名 '@'主机名' ;

例:

复制代码
show grants for 'itcast'@'local host';
2.授予权限

grant 权限列表 on 数据库名.表名 to '用户名'@'主机名' ;

例:

复制代码
grant all on itcast.* to 'itcast'@'local host';

3.撤销权限

revoke 权限列表 on 数据库名.表名 from '用户名'@'主机名' ;

例:

复制代码
revoke all on itcast.* from 'itcast'@'local host';

本期分享就到此结束啦,谢谢大家观看,我们下期再见!

相关推荐
数智启示录6 小时前
Apache Kafka 同 Key 仍会乱序:从分区 Offset 到业务可见的四道边界 【Kafka 合集】
大数据·数据库·经验分享·分布式·面试·kafka·apache
烬羽6 小时前
给 Agent 一个检索式记忆:把对话历史存进 Milvus,该记的都记得
javascript·数据库·agent
星云API技术支持6 小时前
企业微信二次开发外部群:群聊数据与联系人信息如何建立关联
数据库·php·企业微信
我不是程序员三三6 小时前
桌面管理软件哪个最好?从一次上线翻车事故,拆解选型评估与配置落地全流程
数据库
落木萧萧8256 小时前
MyBatis 关联查询的四种写法,为什么最后都变回了手写 XML
java·数据库·后端
春风解人意6 小时前
从零开始学习嵌入式P35----数据库
数据库·嵌入式硬件·学习
sunoo-2296 小时前
【网络编程 + 数据库】select 与 epoll 核心区别详解 + SQLite 入门到 C 接口全攻略
linux·网络·数据库·vscode·学习·sqlite
TDengine (老段)6 小时前
TDengine 错误处理 — 错误码、异常传播、故障恢复
大数据·数据库·物联网·时序数据库·tdengine·涛思数据
zbyyd6 小时前
Linux 系统编程 :select/epoll 多路复用与 SQLite 数据库实战
linux·数据库·sqlite
俊昭喜喜里6 小时前
c#中的构造函数
开发语言·数据库·c#