【MySQL学习笔记】5.DCL:管理用户、授权

DCL:管理用户、授权

DBA:数据库管理员

1.管理用户

添加用户

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

删除用户

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

修改用户密码

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

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

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

忘记root用户密码

  1. 管理员cmd->net stop mysql 停止mysql服务
  2. 使用无验证方式启动mysql服务:mysql --skip-grant-tables
  3. 打开新的cmd窗口直接输入mysql命令敲回车即可登录成功
  4. use mysql;
  5. update user set password = password(‘你的新密码’)
    where user = ‘root’;
  6. 关闭两个窗口
  7. 打开任务管理器。手动结束mysqld.exe的进程
  8. 启动mysql服务
  9. 使用新密码登录

查询用户

  • 切换到mysql数据库:USE mysql;
  • 查询user表:SELECT * FROM USER;

通配符

  • %表示可在任意主机使用用户登录数据库

2.权限管理

  1. 查询权限
    show grants for ‘用户名’@‘主机名’;
  2. 授予权限
    grant 权限列表 on 数据库名.表名 to ‘用户名’@‘主机名’;
  3. 撤销权限
    REVOKE 权限列表 ON 数据库名.表名 FROM ‘用户名’@‘主机名’;

实例

-- 切换到mysql数据库
USE mysql;
-- 查询user表
SELECT * FROM USER;
-- 创建用户
CREATE USER '用户名'@'主机名' IDENTIFIED BY '密码';
CREATE USER 'kevin'@'localhost' IDENTIFIED BY 'kevin';
CREATE USER 'jared'@'%' IDENTIFIED BY 'jared';
-- 删除用户
DROP USER '用户名'@'主机名';
DROP USER 'jared'@'%';

-- 修改密码???
UPDATE USER SET PASSWORD = PASSWORD('新密码') WHERE USER = '用户名';
UPDATE USER SET authentication_string = PASSWORD('root') WHERE USER = 'kevin';

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

ALTER USER 'kevin'@'localhost' IDENTIFIED BY 'password';

-- 查询权限
SHOW GRANTS FOR '用户名'@'主机名';
SHOW GRANTS FOR 'kevin'@'localhost';
-- 授予权限
GRANT 权限列表 ON 数据库名.表名 TO '用户名'@'主机名';
GRANT SELECT,DELETE,UPDATE ON db1.account TO 'kevin'@'localhost';
-- 给kevin用户授予所有权限,在任意数据库任意表上
GRANT ALL ON *.* TO 'kevin'@'localhost'
-- 撤销权限
REVOKE 权限列表 ON 数据库名.表名 FROM '用户名'@'主机名';
REVOKE UPDATE ON db1.account FROM 'kevin'@'localhost';
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值