DCL
- 概述:DCL,数据库控制语言,用来管理用户和给用户授予权限的
管理用户
-
添加用户
CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';
-
删除用户
DROP USER '用户名'@'主机名';
-
修改用户密码
SET PASSWORD FOR '用户名'@'主机名' = PASSWORD('新密码');
-
查询用户
- 首先切换到 MySQL 数据库
USE mysql;
- 查询 user 表
SELECT * FROM USER;
-
通配符
- % 表示可以在任意主机使用用户登录数据库
示例代码
-- 添加用户 lisi , 密码 lisi
CREATE USER 'lisi'@'localhost' IDENTIFIED BY 'lisi';
-- 查询用户
USE mysql; -- 首先切换到 mysql 数据库
SELECT * FROM USER; -- 查询当前数据库用户表,可看到 lisi 创建成功
-- 修改用户密码,在修改前,可通过命令框形式用 lisi 用户登录MySQL
SET PASSWORD FOR 'lisi'@'localhost' = PASSWORD('123');
-- 删除 lisi 用户
DROP USER 'lisi'@'localhost';
-- 查询用户
USE mysql; -- 首先切换到 mysql 数据库
SELECT * FROM USER; -- 查询当前数据库用户表,可看到 lisi 删除成功
-- 添加用户 heng ,密码 heng 在所有主机使用
CREATE USER 'heng'@'%' IDENTIFIED BY 'heng';
权限管理
-
查询权限
-- 显示此主机此用户的权限 SHOW GRANTS FOR '用户名'@'主机名';
-
授予权限
-- 授予权限 GRANT 权限列表 ON 数据库名.表名 TO '用户名'@'主机名';
-
撤销权限文章来源:https://www.toymoban.com/news/detail-798399.html
-- 撤销权限 REVOKE 权限列表 ON 数据库名.表名 FROM '用户名'@'主机名';
示例代码
-- 显示 root 用户权限
SHOW GRANTS FOR 'root'@'localhost';
-- 显示 lisi 用户权限
SHOW GRANTS FOR 'lisi'@'localhost';
-- 显示 heng 用户权限
SHOW GRANTS FOR 'heng'@'%';
-- 授予 lisi 更新权限
GRANT UPDATE ON *.* TO 'lisi'@'localhost';
SHOW GRANTS FOR 'lisi'@'localhost';
-- 授予 heng 所有权限
GRANT ALL ON *.* TO 'heng'@'%';
SHOW GRANTS FOR 'heng'@'%';
-- 撤销 heng 用户所有权限
REVOKE ALL ON *.* FROM 'heng'@'%';
SHOW GRANTS FOR 'heng'@'%';
-- 撤销 lisi 用户更新权限
REVOKE UPDATE ON *.* FROM 'lisi'@'localhost';
SHOW GRANTS FOR 'lisi'@'localhost';
-- 删除 lisi heng 用户
DROP USER 'lisi'@'localhost';
DROP USER 'heng'@'%';
SELECT * FROM USER;
这里 *.* 代表,所有数据库的所有数据表文章来源地址https://www.toymoban.com/news/detail-798399.html
用户权限
权限关键字 | 权限的作用 |
---|---|
SELECT | 允许用户查询数据库中的数据 |
INSERT | 允许用户向数据库中插入新的数据 |
UPDATE | 允许用户修改数据库中现有的数据 |
DELETE | 允许用户从数据库中删除数据 |
CREATE | 允许用户创建新的数据库、表、索引等对象 |
DROP | 允许用户删除数据库、表、索引等对象 |
GRANT OPTION | 允许用户将自己拥有的权限授予其他用户 |
REFERENCES | 允许用户在表中创建外键约束 |
INDEX | 允许用户创建索引 |
ALTER | 允许用户修改表的结构 |
CREATE TEMPORARY TABLES | 允许用户创建临时表 |
LOCK TABLES | 允许用户锁定表 |
EXECUTE | 允许用户执行存储过程 |
CREATE VIEW | 允许用户创建视图 |
SHOW VIEW | 允许用户查看视图的定义 |
CREATE ROUTINE | 允许用户创建存储过程和函数 |
ALTER ROUTINE | 允许用户修改存储过程和函数 |
EVENT | 允许用户创建、修改、删除事件 |
TRIGGER | 允许用户创建触发器 |
到了这里,关于SQL语句详解五-DCL(数据控制语言)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!