基础—SQL—DCL(数据控制语言)之用户管理

一、引言

|-----|-------------------------------|--------------------------|
| 分类 | 全称 | 描述 |
| DCL | Data Control Language(数据控制语言) | 用来创建和管理数据库用户以及控制数据库的访问权限 |

1、图解

右边的是我们的 MySQL的数据库服务器,左边是假设的两个用户

1、 DCL 主要控制的就是有哪些用户可以来访问这台 MySQL 服务器。第二个就是当 Itcast 这个用户来访问这个 MySQL 服务器时,它能够操作哪几个数据库,这是属于它的访问权限。而 heimai用户能够访问几个数据库,这是属于它的访问权限。

2、所以,DCL主要控制的事情包含两个方面。第一,主要控制数据库有哪些用户可以访问。第二,控制每一个用户具有什么样的访问权限。

二、 DCL------管理用户

这是关于DCL语句的第一个部分,关于用户管理的SQL语句,会以4个方面进行学习和讨论。

1、查询用户
USE mysql;
  • SELECT * FROM user;

注意:

在MySQL数据库当中用户的信息、用户所具有的权限的信息。这些都是存放在系统数据库mysql 的 user 表当中

接下来看看:直接去 DataGrip 工具 中 mysql 数据库 查看 user

这样就可以看到当前系统的用户信息

注意:

1、打开之后,默认在 mysql 数据库当中有这4个用户,其它三个我们没有用过,我们只用过一个 root

2、在这张表中,第一个字段叫 Host ,在 mysql 当中,我们要去创建一个用户、删除一个用户,需要通过用户名和 host 主机地址同时地位,这两个才能完整的定位一个 mysql的用户。

3、这个主机地址指的是当前这个用户,只能够在哪一个主机访问当前 mysql 服务器,所以local host代表只能在本机访问,不能远程访问。

2、创建用户
  • CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';

注意:

identified 确认、识别

案例:

(1)创建用户itcast,只能够在当前主机localhost访问,密码123456。
sql 复制代码
CREATE USER 'itcast'@'localhost' IDENTIFIED BY '123456';

注意:

1、我们发现这个用户虽然创建好了,但是这个用户并没有权限在上面表中都是 NO ,我们通过命令行去访问一下。按照 win + R ,输入 cmd 。进行以下操作(通过 itcast 这个用户来访问 mysql

不像我们经常用的 root 用户就可以查看到很多的系统数据库和其它数据库。因为我们刚刚只是创建的这个 itcast 用户,但是他没有访问其它数据库的权限,还并未给这个用户分配权限

(2)创建用户 heima ,可以在任意主机访间该数据库,密码123456。
3、修改用户密码
  • ALTER USER '用户名'@'主机名' IDENTIFIED WITH mysql_native_password BY '新密码;

案例:

(1)修改用户 heima 的访问密码为1234 。
sql 复制代码
ALTER USER 'heima'@'%' IDENTIFIED WITH mysql_native_password BY '1234';
4、删除用户
  • DROP USER '用户名'@'主机名;

案例:

(1) 删除 itcast@localhost 用户
sql 复制代码
DROP USER 'itcast'@'localhost';

这就是我们关于(DCL)管理用户所涉及到的SQL语句。

注意事项:

1、我们在创建用户的时候,主机名可以使用%通配,代表任意主机都可以访问该mysql服务器。

2、这类SQL语句,开发人员操作的比较少。主要是运维,DBA ( Database Administrator 数据库管理员)使用。

相关推荐
linmengmeng_131416 分钟前
【总结】MyBatis-Plus批量插入与清表的正确姿势
java·spring boot·mysql·mybatis
笃行3501 小时前
别拿MySQL数据库管理工具硬导:MySQL 迁 KingbaseES 的完整工具链
数据库
风哥2号1 小时前
数据库教程FGMT51‑PostgreSQL实例管理与参数文件
数据库·postgresql
蓝速科技2 小时前
桌面双屏翻译机量产调试:三类场景兼容性破局方案丨蓝速科技
运维·数据库·人工智能·科技·技术分享
达梦数据2 小时前
DMDRS空间数据类型说明:Oracle、DM8、MySQL空间数据类型映射
数据库·mysql·oracle
白远山2 小时前
24小时自助健身房系统开发实战:从需求分析到完整指南
java·开发语言·数据库·数据挖掘·需求分析
达梦数据2 小时前
DMDRS服务与模块的运行步骤
数据库
lusklusklusk3 小时前
Oracle索引组织表,SQLServer聚集索引,Mysql Innodb表的数据行不是在磁盘上像排队一样严格连续地存放
mysql·postgresql·oracle·sqlserver
让学习成为一种生活方式3 小时前
PMGD:植物线粒体基因组数据库--Journal of Integrative Plant Biology
数据库
达梦数据3 小时前
达梦数据复制软件DMDRS搭建部署示例:源数据库DM8到目标数据库DM8一对一数据同步
数据库