MySQL用户管理和权限设置
默认的,mysql服务器提供都是root用户(超级用户): 拥有所有权限
超级用户的优缺点
- 优点: 权限足够, 可以实现任何操作
- 缺点: 权限太足, 操作不安全
为了项目安全: 通常会创建用户分配权限(用户权限有限)
一、创建用户
create user 用户名[@作用范围] identified by ‘密码’; -- 密码是明文(系统内部会加密: sha1)
用户名: 用户登录的名字, root
作用范围: 没有的话,表示所有的客户端都可以访问, 如有只允许指定范围的客户端访问
- localhost: 只有本机可以访问
- 192.168.31.%: 允许局域网内部访问
- %: 允许所有客户端访问
所有的用户都会保存到: mysql数据库下user表中: 主要信息: user,host,password
当用户创建完成之后就可以实现用户登录
二、分配权限
grant 权限列表/all privileges on 数据库.数据表 to 用户(用户名@作用范围) ;
验证权限可用
其他权限根本不可用
权限列表分类
三、回收权限
revoke 权限列表 on 数据库.表(*) from 用户(用户名@作用范围);
验证权限结果
四、删除用户
drop user 用户(用户名@作用范围);
删除: 需要客户端重启才能生效