黑木2吧百度贴吧:有关UNLIMITED TABLESPACE权限

来源:百度文库 编辑:九乡新闻网 时间:2024/04/28 09:23:35
 给oracle添加一个用户时一般都分配个connect、resource 角色就行了如:

  grant connect,resource to chenwm;

  但这里connect 角色有一个 UNLIMITED TABLESPACE 权限,也就是chenwm这个用户可以在其他表空间

  里随意建表。

  Connected to Oracle Database 11g Enterprise Edition Release 11.1.0.6.0

  Connected as SYS

  SQL> select * from dba_sys_privs where grantee='CHENWM';

  GRANTEE                        PRIVILEGE                                ADMIN_OPTION

  ------------------------------ ---------------------------------------- ------------

  CHENWM                         UNLIMITED TABLESPACE                     NO

  SQL>

  一般DBA要把这个 UNLIMITED TABLESPACE权限关掉

  SQL> revoke unlimited tablespace from chenwm;   #回收unlimited tablespace权限

  Revoke succeeded

  SQL> alter user chenwm quota unlimited on chenwm; #其中后面chenwm是表空间名

  User altered

 

 看到网上的资料

unlimted tablespace 系统特权不能被授予角色(ORACLE文档中说的)

如果在对用户赋权时赋予了DBA或者RESOURCE角色,那么该用户会自动被赋予UNLIMITED TABLESPACE系统权限。如果要撤销上述角色的话,也会导致UNLIMITED TABLESPACE系统权限被撤销。当然,UNLIMITED TABLESPACE权限也可以被单独撤销。


Oracle数据导入的时候,如果不知道导出用户的表空间,应该可以通过分配给导入用户unlimited tablespace权限来导入到新的表空间中.