MySQL数据库——DCL管理用户以与授权&忘记root密码的解决方案

举报
Winter_world 发表于 2021/09/28 22:17:25 2021/09/28
【摘要】 目录 1 DCL管理用户 2 DCL权限管理 1 DCL管理用户 之前的博客讲解了SQL的分类: DDL:操作数据库库和表DML:增删改表中的数据DQL:查询表中数据DCL:管理用户,授权,一般是DBA(数据库管理员)使用 1)添加用户:CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码'; ...

目录

1 DCL管理用户

2 DCL权限管理


1 DCL管理用户

之前的博客讲解了SQL的分类:

  • DDL:操作数据库库和表
  • DML:增删改表中的数据
  • DQL:查询表中数据
  • DCL:管理用户,授权,一般是DBA(数据库管理员)使用

1)添加用户:CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';

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

3)修改用户密码:
      方法一:UPDATE USER SET PASSWORD = PASSWORD('新密码') WHERE USER = '用户名';
      方法二:SET PASSWORD FOR '用户名'@'主机名' = PASSWORD('新密码');

【注意】若此时忘记了root密码怎么办?

  • 1、 停止mysql服务:管理员权限打开cmd-》 net stop mysql
  • 2、无验证方式启动mysql服务:mysqld --skip-grant-tables
  • 3、打开新的cmd窗口:直接输入mysql命令,回车即可成功登录
  • 4、使用mysql数据库:use mysql;
  • 5、修改root密码:update user set password = password('新密码') where user = 'root';
  • 6、关闭两个窗口
  • 7、打开任务管理器,关闭mysqld.exe进程
  • 8、管理员权限打开cmd,启动mysql服务
  • 9、使用新密码登录

4)查询用户:
     use mysql; -- 切换到mysql数据库
     select * from user; -- 查询user表
     注意:通配符%表示可以在任意主机使用用户登录数据库。

2 DCL权限管理

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

2)授予权限:grant 权限列表 on 数据库名.表名 to '用户名'@'主机名'

【举例】:给用户zhangsan授予查询权限:GRANT SELECT ON db1.account TO 'zhangsan'@'localhost';

【举例】:给用户zhangsan授予所有权限:GRANT ALL ON *.* TO 'zhangsan'@'localhost';

3)撤销权限:revoke 权限列表 on 数据库名.表名 from '用户名'@'主机名';

 

———————————————————————————————————————

本文为博主原创文章,转载请注明出处!

若本文对您有些许帮助,轻抬您发财的小手,关注/评论/点赞/收藏,就是对我最大的支持!

祝君升职加薪,鹏程万里!

文章来源: winter.blog.csdn.net,作者:Winter_world,版权归原作者所有,如需转载,请联系作者。

原文链接:winter.blog.csdn.net/article/details/107073660

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。