• day18:用户权限管理


    用户与数据库服务器交互数据,分为两个阶段:

    (1)你有没有权连接上来
    (2)你有没有权执行本操作

    1、你有没有权连接上来

    服务器如何判断用户有没有权连接上来?

    依据:

    1)你从哪里来?host
    2)你是谁?user
    3)你的密码是多少?password

    用户的这三个信息,存储在mysql库中的user表中

    2、你有没有权执行本操作

    在mysql中,有一个库是mysql库,在这个库中有三个表,一个是user表,user表中存储了所有用户的权限信息。一个是db表,db表存储的是所有用户在数据库层的权限信息。一个是tables_priv表,tables_priv表存储的是所有用户在表层的权限信息。

    用户登录,user表首先能限制用户登录,其次还保存了该用户的全局权限,如果该用户没有任何权限,那么将从db表中查找该用户是否有某个数据库的操作权限,如果都没有,将从table_priv表中查找该用户是否有某个表的操作权限,如果有,则该用户可以按照已有的权限来操作该表。

    一、管理用户

    1、查看用户

    首先切换到MySQL数据库

    use  mysql;

    查看所有用户

    select * from user;

    2、创建用户

    语法:create  user  '用户名'@'主机名'  identified  by ‘密码’;

    create user 'zhangsan'@'localhost' identified by '123456';

    3、修改用户密码

    语法:update  user  set password=password('新密码')  where  user='用户名';

    update user set password=password('123') where user='zhangsan';

    修改完密码之后需要刷新以下,否则密码不会被修改,执行以下语句刷新:

    flush privileges;

    4、删除用户

    语法:drop user  '用户名'@'主机名';

    drop user 'zhangsan'@'localhost';

    二、权限管理

    1、查询权限

    语法:show grants  for '用户名'@'主机名';

    show grants for 'root'@'localhost';
    show grants for 'zhangsan'@'localhost';

    2、授予权限

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

    例如:给张三用户授予所有的权限,在任意数据库任意表上

    grant all on *.* to 'zhangsan'@'localhost';

    例如:给李四用户授予访问wgy数据库demo表查询的权限

    create user 'lishi'@'localhost' identified by '123456';
    grant select on wgy.demo1 to 'lishi'@'localhost';

    3、撤销权限

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

    例如:撤销张三用户的所有权限

    revoke all on *.* from 'zhangsan'@'localhost';

    例如:撤销李四用户访问wgy数据库demo表查询的权限

    revoke select on wgy.demo1 from 'lishi'@'localhost';

    常用权限:all、create、drop、select、insert、delete、update

  • 相关阅读:
    洛谷 P1064 金明的预算方案
    洛谷 P2015 二叉苹果树
    洛谷 P1471 方差
    洛谷 P1198 [JSOI2008]最大数
    js字符串中的比较类以及截取类substring实例
    字符串indexOf()的用法
    fromCharCode返回字符串以及字符串加密
    字符串获取类、封装检测数字的方法
    原生js解决倒计时结束图片抖动之后移动消失的效果
    原生js解决图片渐渐变透明的效果
  • 原文地址:https://www.cnblogs.com/wuguiyu/p/11940664.html
Copyright © 2020-2023  润新知