oracle数据库管理--对象、角色相关查询
1、数据字典:
记录了数据库的系统信息,它是只读表和视图的集合,数据字典的所有用户者为sys用户。用户只能在数据字典上执行查询操作(select语句),而其维护与修改是由系统自动完成的。数据字典包括数据字典基表和数据字典视图。
ORACLE中数据字典视图分为3大类, 用前缀区别,分别为:USER,ALL 和 DBA,许多数据字典视图包含相似的信息。
USER_*:有关用户所拥有的对象信息,即用户自己创建的对象信息
ALL_*:有关用户可以访问的对象的信息,即用户自己创建的对象的信息加上其他用户创建的对象但该用户有权访问的信息
DBA_*:有关整个数据库中对象的信息
2、查询用户对应表
1)用于显示当前用户所拥有的所有表,它只返回所对应方案的所有表
SQL>select table_name from user_tables;
2)用于显示当前用户可以访问的所有表,它不仅会返回当前用户方案的所有表,还会返回当前用户可以访问的其它方案的表。
SQL>select table_name from all_tables;
3)用于显示所有方案拥有的数据库表,但是查询这种数据库字典视图,要求用户必须是DBA角色或是有select any table系统权限。
eg:当system用户查询数据字典视图dba_tables时,会返回system、sys、scott···方案所对应的数据库表。
SQL>conn system/manager;
SQL>select table_name from dba_tables;
3、用户名、权限、角色
1)显示所有数据库用户的详细信息
SQL>desc dba_users;
SQL>select username,password from dba_users;
2)显示用户具有的系统权限
SQL> desc dba_sys_privs
SQL> select * from dba_sys_privs where grantee='DBA';
3)显示用户具有的对象权限
SQL> desc dba_tab_privs
SQL> select * from dba_tab_privs where grantee='DBA'
4)显示用户所具有的角色
SQL> desc dba_sys_privs
SQL> select * from dba_role_privs where grantee='SCOTT';
具有CONNECT、RESOURCE角色,ADMIN_OPTION 不可派生
eg:
1)查询某个用户具有怎样的角色
SQL> select * from dba_role_privs where grantee='用户名';
2)查看某个角色包括哪些系统权限
SQL> select * from dba_sys_privs where grantee='CONNECT';
或者
SQL> select * from role_sys_privs where role='CONNECT'
八种系统权限(system privileges),没有对象权限(object privileges)
3)查看某个角色包括对象权限
SQL> select * from dba_tab_privs where grantee='CONNECT';
4)查询oracle中所有的角色,一般为DBA
SQL> select * from dba_roles;
如具有:CONNECT、RESOURCE、DBA等角色
5)查询oracle中所有的系统权限
SQL> select * from system_privilege_map order by name;
6)查询oracle中所有对象权限,一般是dba
SQL> select distinct privilege from dba_tab_privs;
7)查询数据库的表空间
SQL>select tablespace_name from dba_tablespaces;
8)显示当前用户可以访问的所有数据字典视图
SQL> select * from dict where comments like '%grant%';
9)显示当前数据库的全称
SQL> select * from global_name;
相关文章
- 删除oracle trace文件
- 《深入理解Oracle 12c数据库管理(第二版)》PDF
- 查询oracle数据库的数据库名、实例名、ORACLE_SID
- oracle主键自增
- oracle数据库转mysql数据要点
- mysql数据库导入到oracle数据库
- oracle数据库从入门到精通之四
- oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)
- Linux系统案例精解——存储、Oracle数据库、集群、性能优化、系统管理、网络配置
- Ubuntu-12.04.5 安装 oracle 12.2.0.1 数据库database软件
- 【通过Navicat连接Oracle数据库~~~贼细节喔!附如何修改Oracle用户名和密码,更细了呀!!!O(∩_∩)O哈哈~】
- Oracle内存结构(之三)
- oracle查看表空间及大小
- Oracle数据库的性能调整
- Oracle 12c 新特性 --- 新增对数据泵操作的审计跟踪
- 查询oracle数据库的数据库名、实例名、ORACLE_SID
- 如何查询Oracle性能监控
- oracle数据库常用命令
- oracle基础语法
- 获取Oracle数据库中字段信息
- oracle行转列函数的用法【我】
- Oracle数据库由dataguard备库引起的log file sync等待