MySQL基础之用户和权限管理
权限表
user表: 记录允许连接到服务器的账号信息,里面的权限是全局的
用户列:用户列包含三个字段,user,host,password,user和host为user表的联合主键,连接服务器必须三个字段都匹配
权限列:如上图enum('N','Y'), Y表示有权限N表示无权限
安全列
资源控制列:
max_questions 允许用户的每小时查询操作次数
max_updates 允许用户的每小时更新操作次数
max_connections 允许用户的每小时连接次数
max_user_connections 允许用户同时建立连接的次数
db表 存储某个用户对数据库的操作权限
host表 存储的某个主机对数据库的操作权限
table_priv表 对表设置操作权限ss
columns_priv表 对表的某一列设置操作权限
proc_priv表 对存储过程和存储函数设置操作权限
账户管理
新建普通用户
create user 'user_name'@'host' identified by 'password' with grant option;
grant privileges on db.table to 'suer'@host identified by password with grant option;
删除普通用户
drop user;
delect from mysql.user where user='' ,host='';
root用户修改自己的密码
mysqladmin -u username -h localhost -p password "newpwd";
update mysql.suer set password=password('pwd') where user='root' and host='';
set password=password('pwd');
root用户修改普通用户的密码同修改自己密码方式一样,把user换成普通用户用户名即可
普通用户修改自己的密码使用set方法
权限管理
grant privite on db.table to [email protected] identified by pwd 授权
revoke privite on db.table from [email protected] 收回权限
show grants for [email protected] 查看权限