DCL (Data Control Language) 管理用户,授权

DDL:create / alter / drop
DML: insert /update/delete
DQL : select /show
DCL : grant /revoke

我们现在默认使用的都是root用户,超级管理员,拥有全部的权限。但是,一个公司里面的数据库服务器上面可能同时运行着很多个项目的数据库。所以,我们应该可以根据不同的项目建立不同的用户,分配不同的权限来管理和维护数据库。

注: mysqld 是MySQL的主程序,服务器端,mysql 是MySQL的命令行工具,客户端

DBA:数据库管理员

DCL:管理用户,授权

一、创建用户

CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';

在这里插入图片描述
在这里插入图片描述

二、给用户授权

用户创建之后本身没有什么权限,需要给用户授权。

grant 权限列表 on 数据库名.表名 to '用户名'@'主机名';

在这里插入图片描述
在这里插入图片描述

三、撤销授权

revoke 权限列表 on 数据库名.表名 from '用户名'@'主机名';

在这里插入图片描述

四、查看权限

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

在这里插入图片描述

五、删除用户

DROP USER '用户名'@'主机名';

在这里插入图片描述

六、修改密码

1. 修改普通用户密码

UPDATE USER SET PASSWORD = PASSWORD('新密码') WHERE USER = '用户名';

SET PASSWORD FOR '用户名'@'主机名' = PASSWORD('新密码');

在这里插入图片描述

2. 修改管理员密码

mysqladmin -uroot -p password 新密码

在这里插入图片描述

3. mysql 中忘记了 root 用户的密码?

1)cmd -- > net stop mysql 停止mysql服务
			* 需要管理员运行该cmd

(2)使用无验证方式启动mysql服务: 
			* mysqld --skip-grant-tables3)打开新的cmd窗口,直接输入mysql命令,敲回车,就可以登录成功
					
(4use mysql;5update user set password = password('你的新密码') where user = 'root';6)关闭两个窗口

(7)打开任务管理器,手动结束 mysqld.exe 的进程

(8)启动 mysql 服务

(9)使用新密码登录。
发布了647 篇原创文章 · 获赞 285 · 访问量 26万+

猜你喜欢

转载自blog.csdn.net/nanhuaibeian/article/details/104648191
DCL