MySQL数据库——DCL管理用户以与授权&忘记root密码的解决方案
目录
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
- 点赞
- 收藏
- 关注作者
评论(0)