mysql 用户管理

mysql用户管理

mysql的用户的详细资料存放在mysql库中的user表中.如果想要查看用户信息可以在user表中进行查看

  • 可以通过 select * from user; 来查看有多少个用户
  • 可以通过 show processlist; 来查看当前有哪些用户

用户管理的一些指令

  • 创建用户,并设置初始密码
    语法: create user '用户名'@'主机名(ip地址)' identified by '密码';
  • 删除用户
    语法: drop user '用户名' @'主机名';
  • 修改密码
    语法:
  • 修改自己密码(root账号)
    set password = password ('hello');
  • 修改其他账号的密码
    set password for '用户名'@'主机名' = password('密码');

赋予用户权限

当我们创建一个新用户的的时候,该用户没有任何权限,这时候需要我们根据实际情况,赋予其各种情况

基本语法:
grant 权限列表中的权限 ON 库.表名 TO '用户名'@'主机名' [identified by '密码]

mysql中的权限列表如下:

mysql 用户管理_第1张图片

注意:

  • 如果希望一次性给多个权限,用,间隔
  • 如果希望一次性给所有的权限,使用all
  • 库.表名:把权限给哪个库的哪个表
  • 如果希望把某个库的所有表赋予权限,则可采用 库名.* 的模式;
  • 如果希望把所有的库 所有表都赋予全系,则可采用 . 的模式
  • identified by '密码' ,注意这条是可选项
    • 如果用户已经存在,相当于在赋予权限的时候同时修改了该用户的登录密码
    • 如果用户不存在,则相当于创建用户,赋权限,制定密码;

回收用户权限

  • 基本指令
    revoke 权限列表 on 库.表名 from '用户名'@'主机名';
  • 刷新权限
    语法: FLUSH PRIVILEGES:

  • 查看某个用户拥有什么权限
    语法: show grants for '用户名@主机名';

mysql 用户管理_第2张图片

一些细节问题

在创建用户的时候,如果不指定host,则为%,%表示所有的IP都有连接权限

你可能感兴趣的:(mysql 用户管理)