数据库通用语言DCL-MySQL

2023-12-17 18:25:07

DCL

管理用户

查询用户:

USE mysql;
SELECT * FROM user;

在这里插入图片描述
在这里插入图片描述
localhost表示只能本地访问 无法远程访问
localhost表示只能本地访问 无法远程访问
创建用户:
CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';

修改用户密码:
ALTER USER '用户名'@'主机名' IDENTIFIED WITH mysql_native_password BY '新密码';

删除用户:
DROP USER '用户名'@'主机名';

例子:

-- 创建用户test,只能在当前主机localhost访问
create user 'test'@'localhost' identified by '123456';
-- 创建用户test,能在任意主机访问
create user 'test'@'%' identified by '123456';
create user 'test' identified by '123456';
-- 修改密码
alter user 'test'@'localhost' identified with mysql_native_password by '1234';
-- 删除用户
drop user 'test'@'localhost';
在这里插入代码片
use mysql;
-- 创建用户 itcast , 只能够在当前主机localhost访问, 密码123456;
create user 'itcast'@'localhost' identified by '123456';
-- 创建用户 heima , 可以在任意主机访问该数据库, 密码123456 ;
create user 'heima'@'%' identified by '123456';
-- 修改用户 heima 的访问密码为 1234 ;
alter user 'heima'@'%' identified with mysql_native_password by '1234';

在这里插入图片描述
创建用户之后 就可以使用新的用户名进入数据库了

注意事项
  • 主机名可以使用 % 通配
权限控制

常用权限:

权限说明
ALL, ALL PRIVILEGES所有权限
SELECT查询数据
INSERT插入数据
UPDATE修改数据
DELETE删除数据
ALTER修改表
DROP删除数据库/表/视图
CREATE创建数据库/表
官方文档还给出了更多权限,但是以上的基本足够我们使用了

查询权限:
SHOW GRANTS FOR '用户名'@'主机名';

授予权限:
GRANT 权限列表 ON 数据库名.表名 TO '用户名'@'主机名';

撤销权限:
REVOKE 权限列表 ON 数据库名.表名 FROM '用户名'@'主机名';

-- 删除itcast@localhost用户
drop user 'itcast'@'localhost';
-- 查询权限
show grants for 'hma'@'%';
-- 授予权限 itcast的所有表权限
grant all on itcast.* to 'hma'@'%';
-- 撤销权限  itcast的所有表权限
revoke all on itcast.* from 'hma'@'%';
注意事项
  • 多个权限用逗号分隔
  • 授权时,数据库名和表名可以用 * 进行通配,代表所有

文章来源:https://blog.csdn.net/qq_45030264/article/details/135046388
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。