1、grant 受权(建立用户并受权,此方式建立的用户拥有建立数据库、表等):mysql
grant 权限类型 on 库.表/函数/存储过程 to '用户名'@'主机' [ identified by 'testpass'];sql
其中,权限类型all表示全部权限,all包含:create,drop,insert,update,delete,select等等。数据库
例一、将mydb库的students表的全部权限受权给 'testuser'@'192.168.%.%',并设置秘密为testpass:ide
grant all on mydb.students to 'testuser'@'192.168.%.%' identified by 'testpass';函数
例二、将"全部库的全部表/函数/存储过程"的全部权限受权给'testuser'@'192.168.%.%'并设置秘密为testpass:代理
grant all on *.* to 'testuser'@'192.168.%.%' identified by 'testpass';code
例三、将mydb库的全部表的select权限受权给'readonly'@'%',即'readonly'@'%'只有查询权限。ssl
grant select on mydb
.* TO 'readonly'@'%'it
2、权限类型:io
一、管理类权限:create user,file,show databases,super,
reload,shutdown,processlist,replication slave,
replication client,lock tables;
二、库级别和表级别权限:alter,create,create view,drop,execute,
index,grant,show view
三、数据操做(表级别):select,insert,update,delete
四、字段级别:select(col1,...),insert(col1,...),update(col1,...)
3、查看某个用户的权限:
show grants for '用户名'@'主机';
4、revoke 收回权限:
revoke 权限类型 on 库.表/函数/存储过程 from '用户名'@'主机';
如:将收回用户'testuser'@'localhost'全部权限。
revoke all on *.* from 'testuser'@'localhost';
5、mysql库中与用户受权相关的表:
db:库级别的权限。
tables_priv:表级别的权限。
colomns_priv:列级别的权限。
procs_priv:存储过程和存储函数相关的权限。
proxies_priv:代理用户相关的权限。
6、flush:
一、flush privileges:刷新受权,通常用于对某帐户受权后,使其当即生效。
二、flush hosts:清空host,通常用于因帐户信息记不太清楚当链接数据库几回一直失败,那么当 得到正确帐户信息链接被拒绝时,就须要执行flush host.