--=============================
--author:_yeeXun
--date:发表于 @2010年12月26日 10:01:00
--address:Jau 17-304
--==============================
在建立用户时,oracle会把用户的信息存放到数据字典中,当给用户授予权限或角色时,oracle会将权限和角色的信息存放到数据字典。
通过查询dba_users可显示所有数据库用户的详细信息。
通过查询数据字典视图dba_sys_privsx,可显示用户所具有的系统权限。
通过查询数据字典视图dba_tab_privs,可显示用户具有的对象权限。
通过查询数据字典dba_col_privs,可显示用户具有的列权限。
通过查询数据库字典视图dba_role_privs,可显示用户具有的角色。
角色和权限的关系
一个角色拥有许多权限,角色有权限构成。
权限分两种:
1.对象权限:
a) 查询oracle中所有对象权限,一般是dba
sql> Select distinct privilege from dba_tab_privs;
2.系统权限:针对数据库系统而言的。
a) 查询oracle中所有的系统权限,一般是dba
sql Select * from system_privilege_map order by name;
?查看一個角色包含的权限
a).一個角色包含的系統權限
Sql> select * from dba_sys_privs where grantee='DBA';
或者
Sql> select * from role_sys_privs where role='DBA';
这里的DBA代表你要查询的角色名,可以是CONNECT,RESOURCE,DBA,...
b).一个角色包含的对象权限
Sql> select * from dba_tab_privs where grantee='角色名';
?oracle有多少中角色
Select * from dba_roles;(用system省份登录,即可查看)
?如何查看某个用户,具有什么角色
Select * from dba_role_privs where grantee='用户名';
用戶名:scott,sys,system,......
显示当前用户可以访问的所有数据字典视图
Select * from dict where comments like '%grant%';
显示当前数据库的全称
SQL> select * from global_name;
GLOBAL_NAME
----------------------------------------
ORACL.REGRESS.RDBMS.DEV.US.ORACLE.COM
红色部分是域名
其他说明
数据字典主要是用来查询数据库系统级别的信息。通过查询数据字典可以获取一下系统信息:
1.对象定义情况
2.对象占用空间大小
3.列信息
4.约束信息
5.同义词
......
--the end--