(轉自 http://duqiangcise.javaeye.com/blog/563296)
1.查看目前使用者所擁有的系統許可權
select * from session_privs;
2.查看資料庫內的所有角色
selec * from dba_roles;
3.查看資料庫所支援的最大角色數
SQL> show parameter role
max_enabled_roles integer 150 --該值可以修改
os_roles boolean FALSE
remote_os_roles boolean FALSE
4.查看目前使用者所擁有的角色
select * from session_roles;
5.查看角色的嵌套關係和所授予的使用者
select * from dba_role_privs order by 1;
6.其他查看角色和許可權的命令
select * from role_sys_privs;
select * from dba_sys_privs;
7.表級對象許可權
select * from user_tab_privs_made;
select * from user_tab_privs_recd;
8.列上的對象許可權
select * from user_col_privs_made;
select * from user_col_privs_recd;
9.比較connect和resoucr角色的許可權差別
SQL> select grantee,privilege from dba_sys_privs where grantee='RESOURCE' OR GRANTEE LIKE 'CONNECT%'
CONNECT CREATE VIEW
CONNECT CREATE TABLE
CONNECT ALTER SESSION
CONNECT CREATE CLUSTER
CONNECT CREATE SESSION
CONNECT CREATE SYNONYM
CONNECT CREATE SEQUENCE
CONNECT CREATE DATABASE LINK
RESOURCE CREATE TYPE
RESOURCE CREATE TABLE
RESOURCE CREATE CLUSTER
RESOURCE CREATE TRIGGER
RESOURCE CREATE OPERATOR
RESOURCE CREATE SEQUENCE
RESOURCE CREATE INDEXTYPE
RESOURCE CREATE PROCEDURE
已選擇16行。
10.查看oracle的版本,其實查看oracle的版本還有許多其他方法,不過我認為下面這個方法
比較好記。
SQL> select version from v$instance;
10.1.0.2.0
注意:
我做該實驗的oracle版本是10.1.0.2.0。
CONNECT角色在10g以後就只有create session的許可權了,以前其他版本的許可權都被取消了。
當RESOURCE角色被授予一個使用者後,該使用者自動擁有了unlimited tablespace的系統許可權。