oracle查询有sysDBA权限的用户

查看具有sysdba权限的用户

  以sys用户登陆Oracle,执行select * from V_$PWFILE_USERS;可查询到如下结果:

         SQL> select * from V_$PWFILE_USERS;

  USERNAME SYSDBA SYSOPER

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

  SYS TRUE TRUE

  (何为sysoper权限:SYSOPER特权也是Oracle数据库的一种特殊权限。当用户具有该特权时,可以启动数据库,关闭数据库,但是不能建立数据库,也不能执行不完全恢复,这也是和SYSDBA的最大区别,另外,也不具有DBA角色的任何权限。建立了Oracle数据库后,默认情况下只有SYS用户具有SYSOPER特权。需要注意的是,如果要以SYSOPER身份登陆,要求OS用户必须具有OSOPER角色(Windows平台:ORA_OPER角色),当以SYSOPER身份登陆时,必须带有AS SYSOPER选项。)

1.查看所有用户:

select * from dba_users;

select * from all_users;

select * from user_users;

2.查看用户或角色系统权限(直接赋值给用户或角色的系统权限):

select * from dba_sys_privs;

select * from user_sys_privs;

3.查看角色(只能查看登陆用户拥有的角色)所包含的权限

sql>select * from role_sys_privs;

4.查看用户对象权限:

select * from dba_tab_privs;

select * from all_tab_privs;

select * from user_tab_privs;

5.查看所有角色:

select * from dba_roles;

6.查看用户或角色所拥有的角色:

select * from dba_role_privs;

select * from user_role_privs;

7.查看哪些用户有sysdba或sysoper系统权限(查询时需要相应权限)

select * from V$PWFILE_USERS

查找那些用户有DBA权限

SQL> select * from dba_role_privs where granted_role='DBA';

GRANTEE                        GRANTED_ROLE                   ADM DEF
------------------------------ ------------------------------ --- ---
SYS                            DBA                            YES YES
SYSMAN                         DBA                            NO YES
RMANTEST                       DBA                            NO YES
SYSTEM                         DBA                            YES YES
JUNFENG                        DBA                            NO YES

你可能感兴趣的:(Oracle)