河曲智叟 发表于 2023-7-18 20:17:27

Mysql基础5-用户及权限管理

一、介绍

  DCL:Data Control Language(数据控制语言),用来管理数据库用户,控制数据库的访问,权限。
二、用户管理

  1、查询用户

    语法:
      1、use mysql;
      2、select * from user;
        https://img2023.cnblogs.com/blog/751754/202307/751754-20230718162819037-1998326975.png
         默认只有四个账户。
  2、创建用户

    语法:create user '用户名'@'主机名' identified by '密码';
      https://img2023.cnblogs.com/blog/751754/202307/751754-20230718163252803-446408676.png
      https://img2023.cnblogs.com/blog/751754/202307/751754-20230718163348056-483986042.png
       houlei这个就是新创建的,但是只能在本机上访问,因为主机名这里写的是localhost,如果换成通配符"%"就可以在所有主机上访问
      示例:create user 'Se7eN'@'%' identified by '123456';
  3、修改用户密码

    alter user '用户名'@'主机名' identified with mysql_native_password by '新密码';
    https://img2023.cnblogs.com/blog/751754/202307/751754-20230718171754420-557072463.png
 
  4、删除用户

    drop user '用户名'@'主机名'
    示例:  
      https://img2023.cnblogs.com/blog/751754/202307/751754-20230718172340582-920412162.png
   5、注意

     * 主机名可以使用%通配
    * 这类SQL开发人员操作较少,主要是DBA(Database Administrator 数据库管理员)使用
 
三、权限控制

  1、常用权限及说明


[*]

[*]all/all privileges: 所有权限
[*]select: 查询数据权限
[*]insert: 插入数据权限
[*]update:修改数据权限
[*]delete:删除数据的权限
[*]alter:修改表的权限
[*]drop:删除数据库/表/视图
[*]create:创建数据库/表的权限

  2、查询权限 

    语法:show grants for '用户名'@'主机名';
      https://img2023.cnblogs.com/blog/751754/202307/751754-20230718174948652-1512438882.png
  3、授予权限

    语法:grant 权限列表 on 数据库名.表名 to '用户名'@'主机名';
    示例:
      https://img2023.cnblogs.com/blog/751754/202307/751754-20230718175155544-1872922966.png
    为其添加mysql_test数据库中的table_test表的权限    
      https://img2023.cnblogs.com/blog/751754/202307/751754-20230718175442543-1595861084.png
      https://img2023.cnblogs.com/blog/751754/202307/751754-20230718175639815-2087453592.png
  4、撤销权限

    语法:revoke 权限列表 on 数据库名.表名 from '用户名'@'主机名';
    示例:撤销Se7eN账号的,mysql_test数据库中table_test表的所有权限
      https://img2023.cnblogs.com/blog/751754/202307/751754-20230718175957632-540241284.png
  5、注意:

    * 所有权限的设置及撤销的时候,使用的是root账号。
    * 多个权限之间,使用逗号
    * 授权时,数据库名和表名可以使用*进行通配,代表所有
 

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
页: [1]
查看完整版本: Mysql基础5-用户及权限管理