用户授权:
三个维度:
用户名,密码,IP地址
定义:
在数据库服务器添加新用户,并设置访问权限及密码
格式:
grant 权限 on 库.表 to ’用户名‘@’客户端地址’ identified by "密码"
with grant option //可创建授权用户,也能修改权限(all代表所有)
with grant option 这个选项表示该用户可以将自己拥有的权限授权给别人
create user 'ceshi'@'%' identified by '123';
//创建用户'ceshi',密码为‘123’,允许所有IP地址登入(只能先创建再授权)
select distinct concat('User:''',user,'''@''',host,''',') from mysql.user; //查看所有已创建的授权用户
已有的用户,再用create命令创建的报错
select user() //显示登录用户名及客户端地址
show grants; //查看当前登入用户的权限
show grants for 用户名@’客户端地址’ //管理员查看已有授权用户权限
set password=password(“密码”) //授权用户连接后修改连接密码
set password for 用户名@’客户端地址’ =password(“密码”) //管理员重置授权用户链接密码
drop user 用户名@“客户端地址” //删除授权用户(必须有管理员权限)
grant select on . to ‘ceshi@%’ identified by ‘123’;
//修改授权用户权限,也可以直接创建(不建议直接创建,命令有可能会移除)
flush privileges; //刷新权限
mysql库记录授权信息
user 表 //记录已有的授权用户及权限
db 表 //记录已有的授权用户对"数据库"的访问权限
tables_priv //记录已有的授权用户对"表"的访问权限
columns_priv //记录已有的授权用户对"字段"的访问权限
可以直接修改表记录来修改授权用户的权限
权限撤销
格式:(给多少撤多少)权限不在了,用户还在
revoke 权限列表 on 库名.表名 from 用户名@’客户端地址’