一、数据字典的分类
- 静态数据字典表
- 静态数据字典视图
- 动态数据字典表
- 动态数据字典视图
二、数据字典的使用
- 静态数据字典表
静态数据字典表只能由 ORACLE 进行维护。 - 静态数据字典视图
通常用户通过对静态数据字典视图的查询可以获取所需要的所有数据库信息。- Oracle 静态数据字典分类
- user_:包含了当前数据库用户所拥有的所有的模式对象的信息
- all_:包含了当前数据库用户可以访问的所有的模式对象的信息
- dba_:包含了所有数据库对象信息,只有具有DBA角色的用户才嫩而过访问的这些视图
- 常用的静态视图家族,都有一个DBA_ ALL_ USER_ 的视图
- col_privs 包含了表的列权限信息,包含授予者,被授予者和权限名称等信息,
- extents 存储分配信息,包括数据段名 表空间名和分区编号,分区大小
- indexes 索引信息 包含索引类型, 唯一性, 索引作用等表的信息
- ind_columns 索引列信息 包括索引上的列的排序方式等信息
- object 对象信息, 包括对象名称 类型 创建时间 等信息
- segments 表和索引的数据段信息,包括表空间,存储设置等信息
- sequences 序列信息 包含序列名称 ,循环性,最大值等信息
- source 除触发器之外的所有存储过程,函数,包的源代码信息
- synonyms 同义词信息 包括引用的对象等信息
- sys_privs 系统权限信息 包括系统权限名称 授予者
- tab_columns 表和视图的列信息 ,包括列的数据类型等信息
- tab_privs 表权限信息
- tables 表信息 包括表所属的表空间 ,存储参数 ,数据行数量等信息。
- triggers 触发器信息 包括触发器的类型,事件。触发器体等信息
- users 用户信息 。包括用户临时和默认的表空间的类型
- views 视图 信息
- 权限视图
- role_sys_privs 角色拥有的系统权限视图
- role_tab_privs 角色拥有的对象权限
- user_role_ privs 用户拥有的角色
- user_sys_privs 用户拥有的权限的角色
- user_tab_privs_mads 用户分配的关于表对象权限
- user_tab_privs_recd 用户拥有的关于表对象权限
- user_col_privs_mads 用户分配的关于列的对象权限
- user_col_privs_recd 用户拥有的关于列的对象权限
- Oracle 静态数据字典分类
- 动态性能视图
只有sys 用户和拥有DBA 角色的用户可以访问 。- 在数据库启动到 NOMOUNT 的状态时,可以访问 v p a r a m e t e r v parameter v parametervsga v s e s s i o n v session v sessionvprocess v i n s t a n c e v instance v instancevversion v$option
- 当数据库启动到 mount 的状态时,我们还可以访问 v l o g v log v logvlogfile v d a t a f i l e v datafile v datafilevcontrolfile v d a t a b a s e v database v databasevthread v$datafile_header
- 当数据库完全启动后。可以访问v_$fixed_table
- v$access 包含当前被锁定的数据库对象及正在访问他们的会话
- v$archive 包含归档所需的重做日志文件中的信息
- v$archived_log 包含从控制文件中获取的归档日志信息。
- v$archive_processes 包含于一个实例相关的arch 进程的状态信息
- v$backup 包含联机数据文件的备份状态信息
- v$backup_async_io 包括从控制文件中获取的备份集的信息
- v$backup_corruption 包含从控制文件中获取的有关数据文件备份中损坏的信息。
- v$backup_datafile 包含从控制文件中获取的备份的数据文件和备份控制文件的信息
- v$backup_device 包含支持备份设备的信息
- v$backup_piece 包含从控制文件中获取的备份块的信息
- v$backup_redolog 包含从控制文件中获取的关于备份集的归档日志的信息
- v$backup_set 包含从控制文件中获取的备份集的信息
- v$bgprocess 包含数据库后台进程信息
- v$buffer_pool 包含当前实例中所有可用缓冲池的信息
- v$buffer_pool_statistics 包含当前实例所有可用缓冲池的统计信息
- v$cache 包含当前实例的SGA 中的每一块的头部信息
- v$context 包含当前对话的属性信息。
- v$controlfile 包含控制文件信息
- v$controlfile_record_section 包含控制文件记录部分的信息
- v$copy_curruption 包含从控制问价中获取的数据文件副本损坏的信息
- v$database 包含从控制文件中获取的数据库信息
- v$datafile 包含从控制文件中获取的数据文件信息
- v$datafile_copy 包括从控制文件中获取的数据文件副本的信息
- v$datafile_header 包含数据文件头部信息
- v$db_object_cache 包含缓存在库高速缓冲中的数据库对象信息
- v$db_pipes 包含当前数据库中的管道信息
- v$deleted_object 包含从控制文件中获取的被删除的归档日志,数据文件副本和备份块的信息
- v$dispatcher_rate 包含调度进程速率统计量的信息
- v$dispatche 包含调度进程的信息
- v$DLM_ALL_LOCKS 包含当前所有锁
- v$DLM_CONVERT_LOCAL 包含本地锁转换操作所消耗的时间的信息
- v$EVENT_NAME 包含等待时间的信息
- v$fixed_table 包含所有可用的动态性能视图和动态性能表的信息
- v$sysstat 包含当前实例的性能统计信息
- v$instance 包含当前实例的详细信息
- v$sga 包含 SGA 区的主要组成部分的信息
- v$sgainfo 包含SGA 区的详细消息
- v$parameter 包含初始化参数信息
- v$sversion 包含Oracle 版本信息
- v$option 包含已安装的 Oraclette组件的选项信息
- v$session 包含当前所有会话信息
- v$process 包含当前系统所有进程信息
- v$bgprocess 包含数据库所有后台进程信息
- v$database 包含当前数据库信息
- v$controlfile 包含当前数据库所有控制文件信息
- v$datafile 包含当前数据库所有的数据文件的信息
- v$dbfile 包含所有数据文件的编号信息
- v$logfile 包含当前数据库所有的重做日志文件信息
- v$log 包含当前数据库重做日志文件信息
- v$log_history 包含重做日志文件切换情况的历史信息
- v$thread 包含当前数据库线程的信息
- v$lock 包含锁的信息
- v$locked_object 包含被加锁的数据库对象信息
- v$rollname 包含当前处于联机状态的回退信息
- v$rollstat 包含当前所有的回退段的统计信息
- v$tablespace 包含当前数据库所有表空间信息
- v$tempfile 包含当前数据库多有的临时数据文件的信息