数据字典是 Oracle 存放关于数据库内部信息的地方,其用途是用来描述数据库内部的运行和管理情况。比如,一个数据表的所有者、创建时间、所属表空间、用户访问权限等信息,这些信息都可以在数据字典中查找到。当使用数据遇到困难时,就可以通过查询数据字典来提供帮助信息。

一、Oracle 数据字典概述

  Oracle 数据字典的名称由前缀和后缀组成,使用“_”连接,其代表的含义如下:

  •   dba_ :包含数据库实例的所有对象信息。
  • v$_    :当前实例的动态视图,包含系统管理和系统优化等所使用的视图。
  • user_ :记录用户的对象信息。
  • gv_    :分布式环境下所有实例的动态视图,包含系统管理和系统优化使用的视图。
  • all_    :记录用户的对象信息机被授权访问的对象信息。

二、Oracle 常用数据字典

  1、基本数据字典

  基本数据字典主要包括逻辑存储结构和物理存储结构的数据表,另外,还包括一些描述其他数据对象信息的表,如下表:

数据字典名称说明
dba_tablespaces关于表空间的信息
dba_ts_quotas所有用户表空间限额
dba_free_space所有表空间中的自由分区
dba_segments描述数据库中所有段的存储空间
dba_extents数据库中所有分区的信息
dba_tables数据库中所有数据表的描述
dba_tab_columns所有表、视图以及簇的列
dba_views数据库中所有视图的信息
dba_synonyms关于同义词的信息查询
dba_sequences所有用户序列信息
dba_constraints所有用户表的约束信息
dba_indexs关于数据库中所有索引的描述
dba_ind_columns在所有表及簇上压缩索引的列
dba_triggers所有用户的触发器信息
dba_source所有用户存储过程信息
dba_data_files查询关于数据库文件的信息
dba_tab_grants/privs查询关于对象授权的信息
dba_objects数据库中所有的对象
dba_users关于数据库中所有用户的信息

2、常用动态性能视图

  Oracle 系统内部提供了大量的动态性能视图,之所以说是“动态”,是因为这些视图的信息在数据库运行期间会不断地更新。动态性能视图以 v$ 作为名称前缀,这些视图提供了关于内存和磁盘的运行情况,用户只能进行只读访问而不能修改它们。如下表所示:

数据字典名称 说 明
v$database描述关于数据库的相关信息
v$datafile数据库使用的数据文件信息
v$log从控制文件中提取有关重做日志组的信息
v$logfile有关实例重置日志组文件名及其位置的信息
v$archived_log记录归档日志文件的基本信息
v$archived_dest记录归档日志文件的路径信息
v$controlfile描述控制文件的相关信息
v$instance记录实例的基本信息
v$system_parameter显示实例当前有效的参数信息
v$sga显示实例的 SGA 区的大小
v$sgastat统计 SGA 使用情况的信息
v$parameter记录初始化参数文件中所有项的值
v$lock通过访问数据库会话,设置对象锁的所有信息
v$session有关会话的信息
v$sqltext记录 SQL 语句的详细信息
v$sqltext记录 SQL 语句的语句信息
v$bgprocess显示后台进程信息
v$process当前进程的信息
最后修改:2021 年 11 月 28 日
如果觉得我的文章对你有用,请随意赞赏