Oracle的数据库管理(二) 之数据字典

简介: 数据字典:oracle数据库中最重要的组成部分,提供了数据库的一些系统信息。动态性能视图记载了历程启动后的相关信息。数据字典记录了数据库的系统信息,它是只读表和视图的集合,数据字典的所有者sys用户。

数据字典:oracle数据库中最重要的组成部分,提供了数据库的一些系统信息。

动态性能视图记载了历程启动后的相关信息。


数据字典记录了数据库的系统信息,它是只读表和视图的集合,数据字典的所有者sys用户。用户只能在数据字典上执行查询操作(select语句),而其维护和修改是由系统自动完成。

数据字典的组成:数据字典包括数据字典表和数据字典视图,其中基表存储数据库的基本信息,普通用户不能直接访问数据字典的基表。数据字典视图是基于数据字典基表建立的视图,普通用户可以通过查询数据字典视图得到系统信息,数据字典视图主要包括user_xxx ,all_xxx,dba_xxx三种类型。

user_table:

用于显示当前用户所拥有的所有表,它只返回用户所对应的方案的所有表

select   table_name  from   user_tables;

all_tables:用于显示当前用户可以访问的所有表。他不仅会返回当前用户方案的所有表,还会返回当前用户可以访问的其它方案的表;

  比如:select   table_name  from  all_tables;


dba_tables

它会显示所有方案拥有的数据库表,但是查询这种数据库字典视图,要求用户必须是dba角色或是有select  any table系统权限。system,sys,scott    等  方案所对应的的数据库表。



用户、权限、角色

在建立用户时,oracle会把用户信息存放在数据字典中,当给用户授予权限或是角色时,oracle会将权限和角色的信息存放到数据字典中。

通过查询dba_users可以显示所有的数据库用户的详细信息;

通过数据字典视图dba_sys_privs,可以显示用户具有的系统权限 ;

通过数据字典视图dba_tab_privs,可以显示用户具有的对象权限 ;

通过数据字典视图dba_col_privs,可以显示用户具有的列权限 ;

通过数据字典视图dba_role_privs,可以显示用户具有的角色 ;

   查询系统权限,一般是dba:

SQL> select * from   system_privilege_map   order  by  name ;


查询oracle中所有的角色,一般是dba:

SQL> select * from   dba_roles;

查询oracle中的所有的对象权限 一般是dba:

SQL> select  distinct  privilege  from dba_tab_privs;

查看数据库的表空间:

SQL> select tablespace_name from  dba_tablespaces;



问题:

?查询某个用户具有怎么样的角色

select  *  from  dba_role_privs  where  grantee = '用户名'

?查询某个角色包括哪些系统权限

select  * from  dba_sys_privs  where  grantee='DBA'

或者是,select  * from  role_sys_privs   where  role = 'DBA'

? 查看某个角色包括的对象权限

select * from  dba_tab_privs    where grantee ='角色名'

1、 ?如何查询一个角色包括的权限。

a.一个角色包含的系统权限

b.一个角色包含的对象权限

2、oracle究竟有多少种角色?

select  *  from  dba_roles;

3、查看某个用户,具有什么样的角色?

select   *  from  dba_role_privs where  grantee='scott'


显示当前用户可以访问的所有数据字典视图;

select  * from  dict    where  comments  like  '%grant%'



显示当前数据库的全称

select  * from  global_name 


其他说明

数据字典记录有oracle数据库的所有系统信息,通过查询数据字典可以去的下列系统信息:比如

(1)对象定义情况

(2)对象占用空间大小

(3)列信息

(4)约束信息


动态视图

图3图3

相关文章
|
3天前
|
存储 人工智能 Cloud Native
云栖重磅|从数据到智能:Data+AI驱动的云原生数据库
在9月20日2024云栖大会上,阿里云智能集团副总裁,数据库产品事业部负责人,ACM、CCF、IEEE会士(Fellow)李飞飞发表《从数据到智能:Data+AI驱动的云原生数据库》主题演讲。他表示,数据是生成式AI的核心资产,大模型时代的数据管理系统需具备多模处理和实时分析能力。阿里云瑶池将数据+AI全面融合,构建一站式多模数据管理平台,以数据驱动决策与创新,为用户提供像“搭积木”一样易用、好用、高可用的使用体验。
云栖重磅|从数据到智能:Data+AI驱动的云原生数据库
|
5天前
|
SQL 关系型数据库 数据库
国产数据实战之docker部署MyWebSQL数据库管理工具
【10月更文挑战第23天】国产数据实战之docker部署MyWebSQL数据库管理工具
35 4
国产数据实战之docker部署MyWebSQL数据库管理工具
|
3天前
|
关系型数据库 分布式数据库 数据库
云栖大会|从数据到决策:AI时代数据库如何实现高效数据管理?
在2024云栖大会「海量数据的高效存储与管理」专场,阿里云瑶池讲师团携手AMD、FunPlus、太美医疗科技、中石化、平安科技以及小赢科技、迅雷集团的资深技术专家深入分享了阿里云在OLTP方向的最新技术进展和行业最佳实践。
|
6天前
|
SQL Oracle 关系型数据库
Oracle数据库优化方法
【10月更文挑战第25天】Oracle数据库优化方法
17 7
|
6天前
|
Oracle 关系型数据库 数据库
oracle数据库技巧
【10月更文挑战第25天】oracle数据库技巧
11 6
|
6天前
|
存储 Oracle 关系型数据库
Oracle数据库优化策略
【10月更文挑战第25天】Oracle数据库优化策略
11 5
|
11天前
|
缓存 数据库 数据安全/隐私保护
Discuz! X 数据库字典详解:DZ各数据表作用及字段含义
我们使用DISCUZ做网站时,有时需要对数据表进行操作,在操作数据表之前,需要对数据表进行了解。下面是DISCUZ 数据库各数据表作用及字段含义详解,方便新手更好的了解DISCUZ数据库。
39 4
|
11天前
|
人工智能 Cloud Native 容灾
云数据库“再进化”,OB Cloud如何打造云时代的数据底座?
云数据库“再进化”,OB Cloud如何打造云时代的数据底座?
|
13天前
|
存储 Oracle 关系型数据库
数据库数据恢复—Oracle ASM磁盘组故障数据恢复案例
Oracle数据库数据恢复环境&故障: Oracle ASM磁盘组由4块磁盘组成。Oracle ASM磁盘组掉线 ,ASM实例不能mount。 Oracle数据库故障分析&恢复方案: 数据库数据恢复工程师对组成ASM磁盘组的磁盘进行分析。对ASM元数据进行分析发现ASM存储元数据损坏,导致磁盘组无法挂载。
|
12天前
|
XML 缓存 数据库
Discuz! X3.0 版本的数据库字典
Discuz! X3.0 版本的数据库字典
27 0

推荐镜像

更多