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

目录

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';

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

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

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

 

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

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

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

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

你可能感兴趣的:(数据库,DCL管理用户,DCL授权,忘记root密码的解决方案)