一.DCL
1.管理用户
(1)查询用户:
USE mysql;//使用自带的mysql数据库
SELECT * from user;//显示user表的所有信息
(2)创建用户
CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';
CREATE USER 'first'@'localhost' IDENTIFIED BY '123456';//创建用户first,只能在当前主机localhost访问,密码为123456
CREATE USER 'first'@'%' IDENTIFIED BY '123456';//创建用户first,可以在任意主机访问,密码为123456
(3)修改用户密码
ALTER USER '用户名'@'主机名' IDENTIFIED WITH mysql_native_password BY '新密码';
ALTER USER 'first'@'localhost' IDENTIFIED WITH mysql_native_password BY '654321';
(4)删除用户
DROP USER '用户名'@'主机名';
2.权限控制
(1)常用权限
权限 | 说明 |
---|---|
ALL,ALL PRIVILEGES | 所有权限 |
SELECT | 查询数据 |
INSERT | 插入数据 |
UPDATE | 修改数据 |
DELETE | 删除数据 |
ALTER | 修改表 |
DROP | 删除数据库/表/视图 |
CREATE | 创建数据库/表 |
(2)查询权限
SHOW GRANTS FOR '用户名'@'主机名';
(3)授予权限
GRANTS 权限列表 ON 数据库名.表名 TO '用户名'@'主机名';
GRANT ALL ON practice.employees TO 'first'@'localhost';
//给数据库中所有表权限就用数据库名.表名
(4)撤销权限
REVOKE 权限列表 ON 数据库名.表名 FROM '用户名'@'主机名';
REVOKE ALL ON practice.employees FROM 'first'@'localhost';
(5)注意
- 设置多个权限要用逗号隔开
- 授权时,想选择所有用通配,数据库名表名都可以用通配