MySQL 授权(grant[GRANT])与 撤销授权(revoke[REVOKE])

来源:互联网 发布:最新编程语言排行 编辑:程序博客网 时间:2024/05/21 10:39

grant 用法:grant 权限 on 数据库 to 用户!

1 增删改查 普通基础用户的权限:
比如:

grant select on databasename.* to common_user@%;grant delete on databasename.* to common_user@%;grant update on databasename.* to common_user@%;grant insert on databasename.* to common_user@%;

联合到一起!

grant select,delete,update,insert on databasename.* to common_user@%;

于数据开发人员的权限管理
2.1 创建表、索引、视图、存储过程、函数的过程

grant create on databasename.* to commonuser@'192.168.0.*';grant alert on databasename.* to commonuser@'192.168.0.*';grant drop on databasename.* to commonuser@'192.168.0.*';

2.2 外键权限:

grant references on databasename.* to commonuser@'192.168.0.%';

2.3 临时表权限

grant create temporary tables on databasename.* to commonuser@'192.168.0.%';  

2.4 索引权限

grant index on databasename.* to commonuser@'192.168.0.%'; 

2.5 mysql 视图 及源码

grant create view on databasename.* to commonuser@'192.168.0.%';  grant show   view on databasename.* to commonuser@'192.168.0.%';  

3 普通 DBA 管理某个 MySQL 数据库的权限

grant all privileges on databasenameto commonuser@'localhost'

privileges 其中 应该是可以省略的。

4 管理全部 数据库 权限

grant all on *.* to dbaName@'localhost';

5 作用于整个 mysql 服务器

grant select on *.* to dba@localhost; -- dba 可以查询 MySQL 中所有数据库中的表。  grant all    on *.* to dba@localhost; -- dba 可以管理 MySQL 中的所有数据库  

6 grant 作用到 列上

grant select(id, se, rank) on dbname.tableName to dbaUser@'IP';

7 作用于 存储过程及函数

grant execute on procedure testdb.pr_add to 'dba'@'localhost'  grant execute on function testdb.fn_add to 'dba'@'localhost'  

关键字:execute procedure / function

8 查看权限

show grants;show grants for user@localhost

撤销权限:revoke
revoke 权限 on 数据库.数据表 from 用户@IP
例如:

revoke all on *.* from commonUser@'%';
0 0
原创粉丝点击