Express-学习之路 16,mysql-dcl-用户管理 和 权限控制

187 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第16天,点击查看活动详情

Express-学习之路 16,mysql-dcl-用户管理 和 权限控制

引言

本系列会以我的一个理解,来介绍并开始学习 Express

中间会插入自己所联系到的 乱七八糟 的 知识点

用户管理

主要是管理 数据库 的访问权限,哪个用户可以访问我们的数据库。

用户的信息 以及 用户所具有的权限的信息,其实都存放在系统 mysql 中的 user 表里

image.png

我们可以对这个表进行操作,依次来进行控制

  • 查询用户

    select * from user
    

image.png

用户名和主机一起,用来定位 一个用户。

不同的主机名,就算用户名一样,也是不同的用户

下面的 aaa 代表 用户名,bbb 代表 主机名,ccc 代表 密码 或 新密码

注意:任意主机名 可以用 % 来标识

  • 创建用户

    关键字为 create ... identified by

    create user aaa@bbb identified by ccc
    
  • 修改用户密码

    关键字为 alter ... identified with ... by

    alert user aaa@bbb identified with mysql_native_password by ccc
    
  • 删除用户

    关键字为 drop

    drop user aaa@bbb
    

权限控制

我们上面创建的用户,没有权限,只能登陆,访问不了数据库的内容。

我们现在需要给用户增加 处理 数据库的权限。

image.png

上图有好多权限,但是值得注意的权限如下。

权限列表介绍
all全部权限
select查询数据
insert插入数据
update修改数据
delete删除数据
alter修改表
drop删除数据库/表
create创建数据库/表

下面 aaa 代表 用户名,bbb 代表 主机名,eee 代表 权限列表,fff 代表 数据库名, ggg 代表 表名

  • 授权

    关键字 grant

    grant eee on fff.ggg to aaa@bbb
    
    // * 代表所有表
    grant eee on fff.* to aaa@bbb
    
  • 撤销权限

    关键字 revoke

    revoke eee on fff.ggg from aaa@bbb
    
    // * 代表所有表
    revoke eee on fff.* from aaa@bbb
    
  • 查看用户权限

    show grants for aaa@bbb
    

总结

学习了 mysql 中的用户的一些权限和操作,用户管理权限控制