mysql用户管理,

用户的作用

用于管理用户登录和权限的。
root账号,只能本地登录,且操作权限太高。
为服务或者用户专门建立用户,实现一服务一用户或者专人专用。1. 登录地址你可以很好的控制;2. 权限分配控制 3. 追踪设置

mysql用户的构成

  1. 用户名:
  2. 允许登录的地址:
  3. 密码:
  4. 权限:
    mysql -u root -p(password)
    root@localhost : 只允许在localhost地址登录,也就是本地登录,localhost会被解析为127.0.0.1 这个本地回环地址。
    在这个允许登录的地址中,我们可以使用%表示任意的后续IP地址。
    %: 表示任意的IP地址。
    127.%: 表示任意的以127开头的IP地址。
    10.10.%:表示任意的以10.10开头的IP地址。
    192.168.126.%:表示任意的以192.168.126开头的IP地址。
    在mysql的这些账号中,其如果用户名部分相同,但是允许登录的地址不同(哪怕是包含关系的地址),那么这些账号就会被视为不是一个账号。 如root@localhost 和root@%就不是同一个账号。
    而当用户的允许登录地址满足多个同名账号的允许登录地址时,使用的是范围最小的那一个。

查询当前系统中的mysql用户

select concat("'",user,"'@'",host,"'") usernamefrommysql.user;

创建用户

create user "用户名"@"允许登录的地址" identified [with 加密插件名] by "密码";

允许登录的地址 指的是这个用户名在哪个!P地址下可以进行登录,同一个用户名可以指定不同的地址、不同的密码和不同的权限,实现同一个用户名在不同地方表现的效果不一样。这个!P地址中不确定的部分可以使用 % 代替比如:% 就表示允许所有IP地址进行登录,192.168.16.% 就表示只允许192.168.16.0 网段的用户进行登录。另外,这个位置也允许使用域名。

修改密码

alter user "用户名"@"允许登录的地址" identified [with 加密插件名] by "密码";

删除用户

drop user "用户名"@"允许登录的地址" ;

权限设置

权限相关的语法属于DCL
我们新创建的用户是没有任何权限的,只能登录,然后啥都做不了。
我们可以使用以下语法对用户进行授权:
grant 权限允许的操作 on 权限作用的数据库.权限作用的表 to "用户名"@"允许登录的地址" [with grant option];
* 表示任意
homework.* 在homework数据库中的任意表
*.* 在任意数据库中的任意表
[with grant option] 可选内容,表示允许授权账号再次将其拥有的这些权限再度授权给其他用户,或者从其他用户中删除这部分的权限。权限主要是指增删改查。
权限允许的操作 all,alter,create,等

查询权限

show grands for "用户名"@"允许登录的地址";

撤销权限

revoke 权限允许的操作 on 权限作用的数据库.权限作用的表 from "用户名"@"允许登录的地址";

刷新权限

手动刷新权限的语法:flush privileges;

提供给其他人使用mysql

mysql的账号应该尽可能专人专用,专门为他人创建一个账号。

  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值