【MySql】数据权限语言(DCL)

本文详细介绍了数据控制语言(DCL)在SQL中的应用,特别是MySQL中如何使用DCL进行用户管理,包括创建用户、分配权限、修改密码、撤销权限和删除用户。此外,还列举了常见的权限类型,如CREATE、DROP、INSERT、DELETE和UPDATE等,帮助读者掌握数据库权限控制的关键操作。
摘要由CSDN通过智能技术生成

数据权限语言(DCL)

1、概念

  • 数据控制语言 (Data Control Language) 在SQL语言中,是一种可对数据访问权进行控制的指令,它可以控制特定用户账户对数据表、查看表、存储程序、用户自定义函数等数据库对象的控制权
  • root是超级管理员,权限是最大的,很容易操作失误导致数据库的不安全性,所以可以通过DCL针对不同的用户,赋予不同的权利,以及管理用户
  • 注意:
    • 通过管理员新创建的用户是没有任何mysql的权限
    • 赋予权限不能够大于用户自身的权限,root可以给任何用户分配权限

2、使用DCL对用户进行操作

  • 2.1、创建用户

    语法:CREATE USER 用户名@ 连接到的服务器 IDENTIFIED BY ‘密码’;

    -- 创建一个名为test的本地新用户,密码是123456
    CREATE USER `test`@`localhost` IDENTIFIED BY '123456'
    
  • 2.2、分配权限

    语法:GRANT 权限类型 ON 数据库.表名 TO 用户名 @ 连接到的服务器 [IDENTIFIED BY 密码]

    -- 为test用户分配权限,权限类型是全部,权限位置是school数据库的全部表
    GRANT ALL ON school.* TO test @ localhost  [IDENTIFIED BY `密码`]
    

    注意:

    • 在分配权限语句后面,如果是存在的用户,可以不用写密码,如果不存在的用户则需要密码
    • 对于不存在的用户,是先创建,然后再分配权限,所以分配权限语句实现创建用户同时授权或者为已有用户分配权限
  • 2.3、修改用户密码

    语法:SET PASSWORD [FOR 用户名@连接到的服务器]= ‘新密码’;

    -- 修改test用户的密码为19981104
    SET PASSWORD FOR `test`@`localhost` = '19981104';
    
    -- 修改当前用户的密码,如果是root则修改root的密码
    SET PASSWORD = '19960407';
    

    注意:[FOR 用户名@连接到的服务器]可以不写,如果没写的话就是为当前操作的用户修改密码

  • 2.4、撤销用户的权限

    语法:REVOKE 权限类型 ON 数据库.表名 FROM 用户名 @ 连接到的服务器

    -- 撤销test用户对呀school数据库所有表的所有权限
    REVOKE ALL ON school.* FROM `test`@`localhost`
    
  • 2.5、删除用户

    语法:DROP USER 用户名@连接到的服务器

    -- 删除test用户
    DROP USER `test`@`localhost`
    

3、常见的权限类型

  • 获得全部的权限,权限类型就是all

  • 对表操作的权限类型

    create创建---------此权限类型可以赋予用户对表进行创建的权限
    drop删除---------此权限类型可以赋予用户对表进行删除的权限
  • 对数据操作的权限类型

    insert插入--------此权限类型可以赋予用户对数据进行插入的权限
    delete删除--------此权限类型可以赋予用户对数据进行删除的权限
    update修改--------此权限类型可以赋予用户对数据进行修改的权限
    select查询--------此权限类型可以赋予用户对数据进行查询的权限
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值