Mysql学习记录(五)用户授权

用户验证

查询用户

-- 切换到MySQL数据库
use mysql;
-- 查询用户
select * from user;
-- user表中的通配符 % 代表该账户可以在任意主机登录

添加用户

create user '用户名'@'主机名' identified by '密码';

删除用户

drop user '用户名'@'主机名';

修改密码

update user set password = password('新密码') where user = '用户名';
-- 第二种写法
set password for '用户名'@'主机名' = password('新密码');

忘记密码

  1. 停止MySQL服务
    cmd --> net stop mysql
    需要管理员权限
  2. 使用无验证方式启动MySQL服务
    mysqld -skip-grant-tables
  3. 启动之后,另外打开一窗口(管理员),输入
    mysql
  4. 输入之后会直接进入到MySQL当中,使用上面的修改密码,修改完成后,关闭所有窗口
  5. 打开任务管理器,停掉mysqld的进程
  6. 再次打开cmd(管理员), 启动MySQL服务
    net start mysql
  7. 接下来就可以正常登录数据库了

授权

查询权限

show grants for '用户名'@'主机名';

授予权限

grant 权限列表 on 数据库名.表名 to '用户名'@'主机名';
-- 举例 作用是,授予lisi在db3.account这张表上的查询权限
grant select on db3.account to 'lisi'@'%';
-- 增加更新和删除的权限
grant select,update,delete on db3.account to 'lisi'@'%';
-- 授予用户所有权限,在所有的数据库以及表上
grant all on *.* to 'lisi'@'%';

撤销权限

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

你可能感兴趣的:(Mysql)