oracle常用指令-grant权限

grant 权限 on 数据库对象 to 用户

一、grant 普通数据用户,查询、插入、更新、删除 数据库中所有表数据的权利。

grant select on testdb.* to common_user@’%’

grant insert on testdb.* to common_user@’%’

grant update on testdb.* to common_user@’%’

grant delete on testdb.* to common_user@'%'

或者

grant select, insert, update, delete on testdb.* to common_user@’%’

 

二、grant 数据库开发人员,创建表、索引、视图、存储过程、函数。。。等权限。

grant 创建、修改、删除 MySQL 数据表结构权限。

grant create on testdb.* to developer@’192.168.0.%’;

grant alter on testdb.* to developer@’192.168.0.%’;

grant drop on testdb.* to developer@’192.168.0.%’;

grant 操作 MySQL 外键权限。

grant references on testdb.* to developer@’192.168.0.%’;

grant 操作 MySQL 临时表权限。

grant create temporary tables on testdb.* to developer@’192.168.0.%’;

grant 操作 MySQL 索引权限。

grant index on testdb.* to developer@’192.168.0.%’;

grant 操作 MySQL 视图、查看视图源代码 权限。

grant create view on testdb.* to developer@’192.168.0.%’;

grant show view on testdb.* to developer@’192.168.0.%’;

grant 操作 MySQL 存储过程、函数 权限。

grant create routine on testdb.* to developer@’192.168.0.%’; — now, can show procedure status

grant alter routine on testdb.* to developer@’192.168.0.%’; — now, you can drop a procedure

grant execute on testdb.* to developer@’192.168.0.%’;

 

三、grant 普通 DBA 管理某个 MySQL 数据库的权限。

grant all privileges on testdb to dba@’localhost’

其中,关键字 “privileges” 可以省略。

 

四、grant 高级 DBA 管理 MySQL 中所有数据库的权限。

grant all on *.* to dba@’localhost’

 

五、MySQL grant 权限,分别可以作用在多个层次上。

1. grant 作用在整个 MySQL 服务器上:

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

grant all on *.* to dba@localhost; — dba 可以管理 MySQL 中的所有数据库

2. grant 作用在单个数据库上:

grant select on testdb.* to dba@localhost; — dba 可以查询 testdb 中的表。

3. grant 作用在单个数据表上:

grant select, insert, update, delete on testdb.orders to dba@localhost;

这里在给一个用户授权多张表时,可以多次执行以上语句。例如:

grant select(user_id,username) on smp.users to mo_user@’%’ identified by ‘123345′;

grant select on smp.mo_sms to mo_user@’%’ identified by ‘123345′;

4. grant 作用在表中的列上:

grant select(id, se, rank) on testdb.apache_log to dba@localhost;

5. grant 作用在存储过程、函数上:

grant execute on procedure testdb.pr_add to ‘dba’@'localhost’

grant execute on function testdb.fn_add to ‘dba’@'localhost’

 

六、查看 MySQL 用户权限

查看当前用户(自己)权限:

show grants;

查看其他 MySQL 用户权限:

show grants for zhangkh@localhost;

 

七、撤销已经赋予给 MySQL 用户权限的权限。

revoke 跟 grant 的语法差不多,只需要把关键字 “to” 换成 “from” 即可:

grant all on *.* to dba@localhost;

revoke all on *.* from dba@localhost;

 

八、权限一览

  一、系统权限

     3个索引权限

1

2

3

Grant  CREATE ANY INDEX  to User_Name;//创建索引

Grant ALTER ANY INDEX  to User_Name;//更改索引

Grant DROP ANY INDEX to User_Name;//删除索引

  5个存储过程权限,

 CREATE    PROCEDURECREATE   ANY   PROCEDUREALTER    ANY   PROCEDURE
EXECUTE    ANY    PROCEDURE  DROP   ANY  PROCEDURE 

     4个角色权限

CREATE  ROLEALTER  ANY  ROLEDROP  ANY  ROLEGRANT  ANY   ROLE

     5个序列权限

CREATE  SEQUENCE CREATE  ANY  SEQUENCEALTER  ANY  SEQUENCE
SELECT  ANY  SEQUENCE DROP  ANY  SEQUENCE 

     登录数据库权限    

CREATE SESSION

     表空间权限

CREATE    TABLESPACEALTER   TABLESPACEDROP   TABLESPACE
MANAGE   TABLESPACEUNLIMITED   TABLESPACE 

     类型权限

CREATE    TYPECREATE   ANY   TYPEALTER   ANY   TYPE  
DROP   ANY   TYPEEXECUTE  ANY   TYPEUNDER   ANY   TYPE

     视图权限

CREATE   VIEWCREATE   ANY   VIEWDROP   ANY   VIEW
UNDER   ANY  VIEWFLASHBACK   ANY   TABLEMERGE   ANY   VIEW

     表权限

CREATE   TABLECREATE   ANY   TABLEALTER   ANY   TABLE
BACKUP   ANY   TABLEDELETE   ANY   TABLEDROP   ANY   TABLE
INSERT   ANY   TABLELOCK   ANY   TABLESELECT   ANY   TABLE
FLASHBACK   ANY   TABLEUPDATE   ANY  TABLE 

     触发器

CREATE   TRIGGERCREATE   ANY   TRIGGERALTER   ANY   TRIGGER
DROP   ANY   TRIGGERADMINISTER   DATABASE   TRIGGER 

    备份数据库

EXP_FULL_DATABASEIMP_FULL_DATABASE

  二、对象权限

具体表的操作权限:

grant select,delete,insert,update on user1.t_hr to user2;
grant all on user1.t_hr to user2;

具体存储过程执行权限

grant execute on procedure1 to user1

表空间

alter user user1 default tablespace app;

限制修改的列

grant update(wage,bonus) on teachers to user1

收回权限

revoke insert on departments from user1

  三、其它方面

角色有哪些权限   

select * from role_sys_privs where role='xujin';

用户有哪些权限

select * from dba_role_privs where grantee=upper('用户名')

With admin option  用户sh拥有角色dw_manager的权限;可对角色分配用户;可删除角色

GRANT dw_manager
TO sh
WITH ADMIN OPTION;

With Grant option;指定WITH GRANT OPTION以允许被授予者将对象特权授予其他用户和角色。

GRANT READ ON DIRECTORY bfile_dir TO hr
WITH GRANT OPTION;

系统角色的权限

select * from dba_sys_privs where grantee='角色名称'
  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值