mysql-权限管理

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.

相关文章
相关标签/搜索