数据库:DCL

DCL英文全称是Data Control Language(数据控制语言),用来管理数据库用户、控制数据库的访问权限。

控制的内容:哪些用户可以访问该数据库和能访问数据库的用户可以访问哪些数据。

用户管理的语句

  1. 查询用户
    USE mysql;
    SELECT * FROM User;
  2. 创建用户
    CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';
  3. 修改用户密码
    ALTER USER '用户名'@'主机名' IDENTIFIED WITH mysql_native_password BY '新密码';
  4. 删除用户
    DROP USER '用户名'@'主机名';

示例:

sql 复制代码
-- 创建用户
create user 'tester1'@'localhost' identified by '123456';
-- 创建用户,可以再任意主机访问该数据库
create user 'tester2'@'%' identified by '123456';

-- 修改用户密码
alter user 'tester1'@'localhost' identified with mysql_native_password by '1234';

-- 删除用户
drop user 'tester2'@'%';

权限控制

常用权限:

  1. 查询权限
    SHOW GRANTS FOR '用户名'@'主机名';
  2. 授予权限
    GRANT 权限列表 ON 数据库名.表名 TO '用户名'@'主机名';
  3. 撤销权限
    REVOKE 权限列表 ON 数据库名.表名 FROM '用户名'@'主机名';

示例:

sql 复制代码
-- 权限控制
-- 查询权限
show grants for 'tester1'@'localhost';      -- GRANT USAGE ON *.* TO `tester1`@`localhost`表示仅仅能登录并连接
-- 授权
grant all on sql1.* to 'tester1'@'localhost';
-- 撤销权限
revoke all on sql1.* from 'tester1'@'localhost';
相关推荐
无小道几秒前
Redis——哨兵
数据库·redis·缓存·哨兵
爱奥尼欧35 分钟前
轻量级可扩展日志框架-异步日志与系统集成
开发语言·数据库·c++·学习
爱奥尼欧41 分钟前
轻量级可扩展日志框架-日志落地与日志器模块实现
jvm·数据库·c++
ycydynq1 小时前
Django利用中间间 判断页面是否登录,未登录则返回登录页
数据库·django·sqlite
承渊政道1 小时前
【MySQL数据库学习】(MySQL访问、连接池原理与简易网站数据流动)
数据库·学习·mysql·mysql访问·连接池原理
吴声子夜歌1 小时前
SQL进阶——EXISTS谓词
java·数据库·sql
wefg13 小时前
【MySQL】索引(索引底层原理/创建/查看/删除主键、普通、联合、前缀、全文索引)
数据库·mysql
风向决定发型丶8 小时前
redis集群搭建
数据库·redis·缓存
wei_shuo10 小时前
KES 扩展与插件开发实战:自定义函数、触发器与第三方插件集成
数据库·kes
风中芦苇啊11 小时前
从直接生成到受控配置:新一代图表Agent的SQL安全生成范式
数据库·sql·安全