oracle11g用户创建及赋权操作
Oracle系统中用户权限的赋予

Oracle系统中用户权限的赋予,查看和管理.在Oracle数据库中,用户的权限分为两种(在这里我们不讨论dba或oper的权限,只考虑普通用户的权限),分别是System Privilege系统权限和User Table Privilege用户数据表权限.1.首先,创建用户,以下几条命令可以创建一个用户,前提是必须以DBA的身份登录(如果你不是DBA,不要看下去了):create user DB_USER identified by DB_USER_PW '创建用户DB_USER,密码为DB_USER_PW grant create session to DB_USER '给用户创建会话的权限grant resource to DB_USER2.当用户建立后,会自动在Oracle数据库系统中生成属于该用户的Scheme (可以理解为所有属于该用户的表,视图....等对象的集合).该用户可以将对这些对象的访问权限赋予其它的系统用户.3.该用户用sqlplus登录后,以下命令可以看到该用户的权限(该部分取自于CNOUG网站):本用户读取其他用户对象的权限:select * from user_tab_privs;本用户所拥有的系统权限:select * from user_sys_privs;ORACLE数据库用户与权限管理ORACLE是多用户系统,它允许许多用户共享系统资源。
为了保证数据库系统的安全,数据库管理系统配置了良好的安全机制。
2. 1 ORACLE数据库安全策略建立系统级的安全保证系统级特权是通过授予用户系统级的权利来实现,系统级的权利(系统特权)包括:建立表空间、建立用户、修改用户的权利、删除用户等。
系统特权可授予用户,也可以随时回收。
ORACLE系统特权有80多种。
建立对象级的安全保证对象级特权通过授予用户对数据库中特定的表、视图、序列等进行操作(查询、增、删改)的权利来实现。
oracle创建用户、创建表空间、授权、建表的完整过程

oracle创建⽤户、创建表空间、授权、建表的完整过程1.⾸先以sysdba的⾝份登录oracle conn /as sysdba 查询⽤户: select username from dba_users; 查询表空间 select username, default_tablespace from dba_users where username='⽤户名‘; 查询数据⽂件 select file_name, tablespace_name from dba_data_files;2.然后就可以来创建⽤户. create user ⽤户名 identified by 密码;3.修改⽤户的密码 alter user ⽤户名 identified by 新密码;4.创建⼀个表空间 create tablespace 表空间名 datafile '空间物理存储路径(f:\ts_zzg\zzg_data.dbf后缀随意)' size ⼤⼩(200M);5.将表空间分配给⽤户 alter user ⽤户名 default tablespace 表空间名;6.为⽤户分配权限 grant create session,create table,create view,create sequence,unlimited tablespace to ⽤户名; grant all privileges to ⽤户名;(全部权限)7.查看所有⽤户所在的表空间 select username,default_tablespace from dba_users;8.查询⽤户所具有的权限 select *from session_privs;9.删除⽤户及其相关对象 drop user ⽤户名;。
第3部分 oracle11g用户和权限管理

Oracle11g基础--对象权限
授予精确到列上的权限
grant update(ename,sal) on scott.emp to wang;
允许用户更新 emp 表中的ename、sal列
Oracle11g基础—角色管理
收回系统权限REVOKE 例:REVOKE create session FROM test1;
GRANT 命令可用于为用户分配权限或角色
GRANT CREATE SESSION TO wang;
此系统权限允许用户连接到数据库上
GRANT CREATE TABLE TO wang;
赋给wang用户以创建表的系统权限
Oracle 默认用户
SYS
SYSTEM
SCOTT
数据库中所有数据字典表和视图都存储在 SYSTEM 是默认的系统管理员,该用户拥有 SYS Oracle 模式中。 管理工具使用的内部 SYS用户主要用 SCOTT用户是Oracle 数据库的一个示范帐户,在数据库安装时创建 来维护系统信息和管理实例。 表和视图。通常通过SYSTEM用户管理数据库用户、权限和存储等
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. 角色管理:角色是一组相关权限的组合,可以将权限授予角 色,再把角色授予用户,以简化权限管理。 (1)创建角色CREATE ROLE,应该具有CREATE ROLE系统权限。 CREATE ROLE role_name; (2) 授予角色权限,可以是系统权限或者对象权限。 GRANT privilege TO ROLE; 例: grant create session ,create any table, drop any table to role1; (3) 将角色授予用户 GRANT role TO user; 例: grant role1 to test2; (4) 从用户收回角色 REVOKE role FROM user;
在Oracle中创建新用户,并且赋予该用户查看其他用户视图的权限

在Oracle中创建新⽤户,并且赋予该⽤户查看其他⽤户视图的权限在Oracle中创建新⽤户, 并且赋予该⽤户查看其他⽤户视图的权限1. 需求提出在HIS与第三⽅系统进⾏集成时,某第三⽅系统需要访问HIS数据库的视图⽽⾮全部的数据库表。
HIS的数据库为Oracle, 因此需要在Oracle中在原有⽤户的基础上,再增加⼀个⽤户,该⽤户仅能查看HIS中为其开放的视图。
这也是为了系统之间的安全考虑的。
2. 解决⽅案经过技术查阅,找到的解决⽅案如下:(1)以system⽤户登录oracle数据库.(2)创建⽤户并且为⽤户赋予查看视图的权限.这⾥假设要创建⼀个tester⽤户,登录密码为:“123456”.HIS需要开放的视图是在原来⽤户 outpatient下的,视图名称为:v_daily_charge.此时,应该撰写的SQL为:--01: 创建tester⽤户,并且初始密码为123456.create user tester identified by "123456";--02: 赋予该⽤户登录数据库的权限.grant create session to tester;--03: 赋予该⽤户查看outpatient下的视图v_daily_charge的权限.grant select on outpatient.v_daily_charge to tester;注意:在运⾏以上第三条SQL的时候,oracle数据库有可能会报错。
“ORA-01720: 不存在对 emergency.t_cost表的授权选项。
”经过研究,出错的原因应该是,tester⽤户要访问outpatient⽤户的视图,该视图不仅会查阅outpatient⽤户下的某些表,如t_user, t_dept表,⽽且还访问了其他⽤户的表,如emergency⽤户下的t_cost表。
为了避免以上的错误,就需要在为tester⽤户赋予查看outpatient的视图权限前,先将outpatient视图中需要访问到的emergency⽤户下的表的权限开放给outpatient⽤户。
oracle创建用户,分配权限以及建立变空间

一、创建表空间及用户并授权1:创建临时表空间create temporary tablespace user_temptempfile 'Q:\oracle\product\10.2.0\oradata\Test\xyrj_temp.dbf'size 50mautoextend onnext 50m maxsize 20480mextent management local;2:创建数据表空间create tablespace user_dataloggingdatafile 'Q:\oracle\product\10.2.0\oradata\Test\xyrj_data.dbf'size 50mautoextend onnext 50m maxsize 20480mextent management local;第3步:创建用户并指定表空间create user username identified by passworddefault tablespace user_datatemporary tablespace user_temp;第4步:给用户授予权限grant connect,resource,dba to username;第二部分:删除用户及表空间//删除用户以及用户所有的对象drop user zfmi cascade;//cascade参数是级联删除该用户所有对象,经常遇到如用户有对象而未加此参数则用户删不了的问题,所以习惯性的加此参数//删除表空间前提:删除表空间之前要确认该表空间没有被其他用户使用之后再做删除drop tablespace zfmi including contents and datafiles cascade onstraints;//including contents 删除表空间中的内容,如果删除表空间之前表空间中有内容,而未加此参数,表空间删不掉,所以习惯性的加此参数//including datafiles 删除表空间中的数据文件//cascade constraints 同时删除tablespace中表的外键参照二、oracle数据库的导入和导出下面介绍的是导入导出的实例,向导入导出看实例基本上就可以完成,因为导入导出很简单。
在Oracle11g中新建用户,授予只读用户权限详细步骤(批量执行授权多表查询)

2、批量执行创建同义词查询语句
SELECT 'create or replace SYNONYM MACS.' || object_name|| ' FOR ' || owner || '.' || object_name|| ';' from dba_objects where owner in ('PDSCI') and object_type='TABLE';
2、授权connect //没有无法登陆 和 synonym //同义词 grant connect to macs; grant create synonym to macs;
3、授权查询表的权限 grant select on PDSCI.M_TMP to t1;
4、创建同义词 (查询的时候就不需要使用A.表名,直接使用同义词查询) create or replace SYNONYM _TMP FOR PDSCI.M_TMP;
5、完成。测试查询
备注: 1、批量执行授权多表查询权限的查询语句 select 'grant select on '||owner||'.'||object_name||' to t1;'
from dba_objects where owner in ('PDSCI') and object_type='TABLE';
在oracle11g中新建用户授予只读用户权限详细步骤批量执行授权多表查询
在 Oracle11g中新建用户,授予只读用户权限详细步骤(批量执行授权多表查 询)
1、创建新用户 create user macs identified by 123456 default tablespace pdsci;
oracle创建表空间用户及授权查看权限

Oracle 创建表空间、创建用户以及授权、查看权限一、创建临时表空间# sqlplus / as sysdba;sql> CREATE TEMPORARY TABLESPACE test_tempTEMPFILE '/opt/oradata/test_temp.dbf'SIZE 32MAUTOEXTEND ONNEXT 32M MAXSIZE 2048MEXTENT MANAGEMENT LOCAL;二、创建用户表空间sql> CREATE TABLESPACE test_dataLOGGINGDATAFILE '/opt/oradata/test_data.dbf'SIZE 32MAUTOEXTEND ONNEXT 32M MAXSIZE 2048MEXTENT MANAGEMENT LOCAL;sql> select tablespace_name,block_size,extent_management,segment_space_managementfrom dba_tablespaceswhere tablespce_name like 'USER%';三、还原表空间sql> create undo tablespace user01_undodatafile '/u01/oracle/app/oracle/user01_undo.dbf'size 20M;sql> select tablespace_name,block_size,extent_management,segment_space_management from dba_tablespacesfrom tablespace_name like 'user01_%';sql> select tablespace_name,status,contentsfrom dba_tablespacesfrom tablespace_name like 'user01_%';四、创建用户并制定表空间sql> CREATE USER username IDENTIFIED BY passwordDEFAULT TABLESPACE TEST_DATATEMPORARY TABLESPACE TEST_TEMP;sql> GRANT role TO username;五、查看所有用户sql> SELECT * FROM DBA_USERS;sql> SELECT * FROM ALL_USERS;sql> SELECT * FROM USER_USERS;六、查看用户对象或角色权限sql> SELECT * FROM DBA_TAB_PRIVS;sql> SELECT * FROM ALL_TAB_PRIVS;sql> SELECT * FROM USER_TAB_PRIVS;七、查看所有角色sql> SELECT * FROM DBA_ROLES;八、查看用户或角色所拥有的角色sql> SELECT * FROM DBA_ROLE_PRIVS;sql> SELECT * FROM USER_ROLE_PRIVS;九、表空间脱机sql> select tablespace_name,status,contentsfrom dba_tablespaceswhere tablespce_name like 'user_%';sql> col name for a55sql> select file#,name,statusfrom v$datafilewhere file# >=8;设置脱机状态sql> alter tablespace user01 offline;sql> select tablespace_name,status,contents from dba_tablespaceswhere tablespce_name like 'user01_%'; sql> select file#,name,statusfrom v$datafilewhere file# >= 8;设置联机状态sql> alter tablespace user01 online;十一、只读表空间设置只读表空间sql> alter tablespace user01 read only;sql> select tablespce_name,status,contents from dba_tablespaceswhere tablespace_name like 'user_%';可读可写sql> alter tablespace user01 read write;sql> select tablespace_name,status,contentsfrom dba_tablespacewhere tablespace_name like 'user%';十二、改变表空间的存储设置sql> alter tablespace user01 minimum extent 100K;sql> alter tablespace user01default storage ( initial 100 k next 100 k maxextents 200);sql> set line 120sql> col tablespace_name for a15sql> select tablespace_name,initial_extent,next_extent,max_extents,pct_increase,min_extentsfrom dba_tablespaceswhere tablespace_name like 'user01%';十三、重置表空间大小sql> col file_name for a40sql> set line 100sql> col tablespace_name for a15sql> select file_id,tablespace_name,file_name,autoextensible from dba_data_fileswhere file_id >= 8order by file_id;sql> alter database datafile' ' autoextend onnext 1M;sql> select file_id,tablespace_name,file_name,autoextensiblefrom dba_data_fileswhere file_id >= 8order by file_id;十四、手工重置数据文件的大小sql> select file_id,file_name,tablespace_name,bytes/(1024*1024) MBfrom dba_data_fileswhere tablespace_name LIKE 'USERS01%'order by tablespace_name;sql> alter database datafile '/u01/oracle/app/oracle/oradata/db243/use01.dbf' resize 50M;sql> select file_id,file_name,tablespace_name,bytes/(1024*1024)MBfrom dba_data_fileswhere tablespace_name like '%USE%'order by tablespace_name;sql> alter tablespace use01add datafile '/u01/oracle/app/oracle/oradata/db243/use01_a.dbf'size 30M;sql> select file_id,file_name,tablespace_name,bytes/(1024*1024)MBfrom dba_data_fileswhere tablespace_name like '%USE%'order by tablespace_name;十五、移动数据文件的方法(一)、移动可以脱机的表空间# sqlplus / as sysdbasql> col file_name for a45sql> set line 120#查看数据库中数据文件的分布情况sql> select file_id,file_name,tablespace_name from dba_data_fileswhere file_name like '%ORADATA%'order by file_name;# 查看数据库表空间的状态sql> select tablespace_name,status,contents from dba_tablespaceswhere tablespace_name not like '%USE%';# 使表空间脱机sql> alter tablespace use01 offline;# 查看更改有没有成功sql> select tablespace_name,status,contentsfrom dba_tablespaceswhere tablespace_name not like '%USE%';# CP 数据文件# cp /u01/oracle/app/oracle/oradata/db243/use01.dbf /u01/oracle/app/oradata#使用命令来重新命名表空间所对应的数据文件名sql> alter tablespace use01 renamedatafile '/u01/oracle/app/oracle/oradata/db243/use01.dbf'to '/u01/oracle/app/oradata/use01.dbf';#表空间联机sql> alter tablespace use01 online;(二)、移动系统表空间Sql> shutdown immediatesql> startup mountsql> host cp /u01/oracle/app/oracle/oradata/db243/system01.dbf /u01/oracle/app/oradatasql> alter database renamefile '/u01/oracle/app/oracle/oradata/sb243/system01.dbf'to '/u01/oracle/app/oradata/system01.dbf';sql> alter database open;sql> select tablespace_name,status,contentsfrom dba_tablespaces;sql> select file_id,file_name,tablespace_namefrom dba_data_files;十六、迁移数据字典和本地管理的表空间Sql> connect sys/wuzihao as sysdba;sql> show user;#查看哪些表空间是数据字典管理的sql> select tablespace_name,block_size,extent_management,segment_space_management,min_extentsfrom dba_tablespaceswhere tablespace_name like '%USE%';#将数据字典管理的表空间迁移到本地管理的表空间sql> execute dbms_space_admin.tablespace_migrate_to_local('use01');#将本地管理的表空间迁移到数据字典管理的表空间sql> execute dbms_space_admin.tablespace_migrate_from_local('use01');十七、删除表空间#查询所有创建的表空间sql> select file_id,file_name,tablespace_namefrom dba_data_fileswhere file_id > 5order by file_id;#控制文件指向的数据文件指针删除sql> drop tablespace use01;#操作系统文件也删除sql> drop tablespace use01 including contents and datafiles;#临时表空间sql> col file for a50sql> col tablespace for a15sql> set line 120#查询临时表空间sql> select f.file#,t.ts#, “File”, “Tablespace”from v$tempfile f,v$tablspace twhere f.ts# = t.ts#;#删除临时表空间sql>drop tablespace use01_temp including contents and datafiles;十八、利用OMF来管理表空间# sqlplus / as sysdba#设定数据文件存放的目录sql> alter system setdb_create_file_dest = '/u01/oracle/app/oradata';sql> create tablespace test01;sql> select file_id,file_name,tablespace_name,bytes/(1024*1024)MBfrom dba_data_files;sql> alter tablespace test01 add datafile 50M;十九、应用实例#查询所有的表空间信息sql> select file_id,file_name,tablespace_name,bytes/(1024*1024)MB from dba_data_files;#查看数据库表空间是数据字典管理,还是本地管理sql> select tablespace_name,block_size,extent_management,segment_space_management,min_extentsfrom dba_tablespaces;#查询所有的临时表空间sq l> select f.file#,t.ts#, “File”, “Tablespace”from v$tempfile f,v$tablespace twhere f.ts# = t.ts#;#创建数据表空间sql> create tablespace pioneer_datadatafile '/u01/oracle/app/oradata/pioneer_data.dbf'size 100 Mextent management localuniform size 1M;#创建索引表空间sql> create tablespace pioneer_indexdatafile '/u01/oracle/app/oradata/pionner_index.dbf'size 100Mextent management localuniform size 1M;#创建还原表空间sql> create tablespce pioneer_undodatafile '/u01/oracle/app/oradata/pioneer_undo.dbf'size 100Mextent management local;#创建临时表空间sql> create temporary tablespace pioneer_tempdatafile '/u01/oracle/app/oradata/pioneer_temp.dbf'size 50Mextent management localuniform size 2M;#验证表空间是否创建成功sql> select file_id,file_name,tablespace_name,bytes/(1024*1024)MB from dba_tablespaceswhere tablespace_name like 'PION%';#验证临时表空间创建是否成功sql> select f.file#,t.ts#, “File”, “Tablespace”from v$tempfile f,v$tablespace twhere f.ts# = t.ts#and like 'PION%';#验证四个表空间是否本地管理,sql> select tablespace_name,block_size,extent_management, segment_space_management,min_extents,contents from dba_tablespaceswhere tablespace_name like 'PION%';。
ORACLE创建表空间、创建用户、更改用户默认表空间以及授权、查看权限(修改表空间大小)

ORACLE创建表空间、创建⽤户、更改⽤户默认表空间以及授权、查看权限(修改表空间⼤⼩)查询表空间路径:select * from dba_data_files删除表空间:正常情况下,删除表空间的正确⽅法为:DROP TABLESPACE tablespace_name INCLUDING CONTENTS AND DATAFILES;实例:1、CREATE TABLESPACE UCITDB_dataLOGGINGDATAFILE '/home/app/oracle/app/oracle/oradata/UCITDB/UCITDB_DATA01.DBF'SIZE 32MAUTOEXTEND ONNEXT 32M MAXSIZE 2048MEXTENT MANAGEMENT LOCAL;创建表空间UCITDB_data:⽤户表空间不限制表空间⼤⼩⽤:maxsize unlimited2、CREATE USER UCITDBA IDENTIFIED BY 111111DEFAULT TABLESPACE UCITDB_data;创建帐号并设置默认表空间UCITDBA:创建的帐号名111111:为设置帐号的密码修改⽤户默认表空间:alter user dbcenter default tablespace DBCENTER_DATA3、grant dba TO UCITDBA给⽤户授予权限dba:⽤户组UCITDBA:⽤户创建临时表空间:CREATE TEMPORARY TABLESPACE test_tempTEMPFILE 'C:\oracle\product\10.1.0\oradata\orcl\test_temp01.dbf'SIZE 32MAUTOEXTEND ONNEXT 32M MAXSIZE 2048MEXTENT MANAGEMENT LOCAL;创建⽤户表空间:CREATE TABLESPACE test_dataLOGGINGDATAFILE 'C:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\TEST_DATA01.DBF'SIZE 32MAUTOEXTEND ONNEXT 32M MAXSIZE 2048MEXTENT MANAGEMENT LOCAL;创建⽤户并制定表空间:CREATE USER username IDENTIFIED BY passwordDEFAULT TABLESPACE TEST_DATATEMPORARY TABLESPACE TEST_TEMP;给⽤户授予权限:GRANTCREATE SESSION, CREATE ANY TABLE, CREATE ANY VIEW ,CREATE ANY INDEX, CREATE ANY PROCEDURE, ALTER ANY TABLE, ALTER ANY PROCEDURE,DROP ANY TABLE, DROP ANY VIEW, DROP ANY INDEX, DROP ANY PROCEDURE,SELECT ANY TABLE, INSERT ANY TABLE, UPDATE ANY TABLE, DELETE ANY TABLETO username;将role这个⾓⾊授与username,也就是说,使username这个⽤户可以管理和使⽤role所拥有的资源GRANT role TO username;-----------------------------------------------查看⽤户权限---------------------------------------------------------查看所有⽤户:SELECT * FROM DBA_USERS;SELECT * FROM ALL_USERS;SELECT * FROM USER_USERS;查看⽤户系统权限:SELECT * FROM DBA_SYS_PRIVS;SELECT * FROM USER_SYS_PRIVS;查看⽤户对象或⾓⾊权限:SELECT * FROM DBA_TAB_PRIVS;SELECT * FROM ALL_TAB_PRIVS;SELECT * FROM USER_TAB_PRIVS;查看所有⾓⾊:SELECT * FROM DBA_ROLES;查看⽤户或⾓⾊所拥有的⾓⾊:SELECT * FROM DBA_ROLE_PRIVS;SELECT * FROM USER_ROLE_PRIVS;------遇到no privileges on tablespace 'tablespace 'alter user userquota 10M[unlimited] on tablespace;oracle表空间增加和修改数据⽂件1、增加数据⽂件alter tablespace tablespace_name add datafile '/usr/app/oracle/oradata/dbm/UCITDB_DATA01.DBF' size 10240M;2、⼿⼯改变数据⽂件尺⼨alter database datafile '/usr/app/oracle/oradata/dbm/UCITDB_DATA01.DBF' resize 2048M;3、容许数据⽂件⾃动扩展alter database datafile '/usr/app/oracle/oradata/dbm/UCITDB_DATA01.DBF' autoextend on next 200M maxsize 30G; (解决oracle:ora 00017 01659错误)。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
racl e用户创建及权限设置
权限:
create session
create table
unlimited tablespace
connect
resource
dba
例:
#sqlplus /nolog
SQL> conn / as sysdba;
SQL>create user username identified by password
SQL> grant dba to username;
SQL> conn username/password
SQL> select * from user_sys_privs;
我们将从创建Oracle用户权限表开始谈起,然后讲解登陆等一般性动作,使大家对Oracle 用户权限表有个深入的了解。
一、创建
sys;//系统管理员,拥有最高权限
system;//本地管理员,次高权限
scott;//普通用户,密码默认为tiger,默认未解锁
二、登陆
sqlplus / as sysdba;//登陆sys帐户
sqlplus sys as sysdba;//同上
sqlplus scott/tiger;//登陆普通用户scott
三、管理用户
create user zhangsan;//在管理员帐户下,创建用户zhangsan
alert user scott identified by tiger;//修改密码
四,授予权限
1、默认的普通用户scott默认未解锁,不能进行那个使用,新建的用户也没有任何权限,必须授予权限
/*管理员授权*/
grant create session to zhangsan;//授予zhangsan用户创建session的权限,即登陆权限grant unlimited session to zhangsan;//授予zhangsan用户使用表空间的权限
grant create table to zhangsan;//授予创建表的权限
grante drop table to zhangsan;//授予删除表的权限
grant insert table to zhangsan;//插入表的权限
grant update table to zhangsan;//修改表的权限
grant all to public;//这条比较重要,授予所有权限(all)给所有用户(public)
2、oralce对权限管理比较严谨,普通用户之间也是默认不能互相访问的,需要互相授权
/*oralce对权限管理比较严谨,普通用户之间也是默认不能互相访问的*/
grant select on tablename to zhangsan;//授予zhangsan用户查看指定表的权限
grant drop on tablename to zhangsan;//授予删除表的权限
grant insert on tablename to zhangsan;//授予插入的权限
grant update on tablename to zhangsan;//授予修改表的权限
grant insert(id) on tablename to zhangsan;
grant update(id) on tablename to zhangsan;//授予对指定表特定字段的插入和修改权限,注意,只能是insert和update
grant alert all table to zhangsan;//授予zhangsan用户alert任意表的权限
五、撤销权限
基本语法同grant,关键字为revoke
六、查看权限
select * from user_sys_privs;//查看当前用户所有权限
select * from user_tab_privs;//查看所用用户对表的权限
七、操作表的用户的表
/*需要在表名前加上用户名,如下*/
select * from zhangsan.tablename
八、权限传递
即用户A将权限授予B,B可以将操作的权限再授予C,命令如下:
grant alert table on tablename to zhangsan with admin option;//关键字with admin option grant alert table on tablename to zhangsan with grant option;//关键字with grant option效果和admin类似
九、角色
角色即权限的集合,可以把一个角色授予给用户
create role myrole;//创建角色
grant create session to myrole;//将创建session的权限授予myrole
grant myrole to zhangsan;//授予zhangsan用户myrole的角色
drop role myrole;删除角色
/*但是有些权限是不能授予给角色的,比如unlimited tablespace和any关键字*/。