数据字典
我们想要了解数据库系统的一些使用情况,我们就要通过
查看数据字典进行了解。
数据字典:存储数据属性的一块数据(元数据)
数据字典分为两类:(静态数据字典)(动态数据字典)
静态数据字典记录硬盘的信息,动态数据字典记录内存变更的信息。
每个登录用户查看的数据字典返回的结果信息都是不一致的,
静态数据字典:
以USER_开头的数据字典表,只能查看数据这个用户自己的信息。
以ALL_开头的数据字典表,除了能看到自己用户本身的数据外,还能
看到包括其他人的,而且是有权限访问的数据。
静态数据字典包括了USER_,ALL_,DBA_*
等存储在硬盘里的静态信息,内存会先从硬盘中读取数据,再进行
增删查改操作。
动态数据字典包括了V
I
N
S
T
A
C
N
E
,
V
INSTACNE,V
INSTACNE,VDATABASE等等,当前内存
里记录的信息,这些信息是还没加载进入硬盘里的信息,为最新的信息,
也是脏数据。
总之,动态性能视图很好地反映了当前数据库的运行状态信息,
对于数据库性能调优和判断 系统瓶颈提供信息支持,通过动态性能视图还可以查看控制文件的信息,数据文件的信息和表空间信息等;
数据字典是数据库中非常重要数据库对象,它在创建数据库时创建,其中记录了数据库创建 信息和各种对象的信息。由于基表的内容无法阅读,所以 ORACLE 提供了数据字典视图,该视图是 基于基表数据的。数据字典视图是静态视图,在数据库启动后就无法改变。ORACLE 数据库还维护了 动态性能视图,这些视图以 V$为前缀,动态性能视图反映了数据库当前的运行状态和各种对象的 活跃信息,动态性能视图是 DBA 进行故障判断和数据库性能调优的重要依据。
列举一些:
ORACLE静态数据字典视图:(必须重启后才生效)
USER_TABLES --查看当前用户所有拥有的表
USER_INDEXES --查看当前用户创建的索引
USER_VIEWS --查看当前用户拥有的视图
USER_CATALOG --该视图包含当前用户的所有表的名字和类型
DBA_USERS --查看数据库系统上何时创建了多少个用户
DBA_INDEXES --查看数据库系统上的索引信息
DBA_DATA_FILES --查看数据库系统上的数据文件信息
USER_IND_COLUMNS --查看一个索引是建立在表的哪几列上
ORACLE动态性能视图(动态数据字典):(动态性能视图只存在于运行的数据库中,它是一组虚表)
V
C
O
N
T
R
O
L
F
I
L
E
−
−
包
含
了
控
制
文
件
存
储
目
录
和
文
件
名
信
息
V
CONTROLFILE --包含了控制文件存储目录和文件名信息 V
CONTROLFILE−−包含了控制文件存储目录和文件名信息VDATAFILE --包含了数据库文件信息
V
F
I
X
E
D
T
A
B
L
E
−
−
包
含
了
当
前
所
有
动
态
性
能
视
图
V
FIXED_TABLE --包含了当前所有动态性能视图 V
FIXEDTABLE−−包含了当前所有动态性能视图VLOG --查看当前正在使用的重做日志组
V
L
O
G
F
I
L
E
−
−
查
看
当
前
数
据
库
系
统
的
重
做
日
志
组
的
日
志
成
员
的
存
储
目
录
、
文
件
名
和
状
态
信
息
V
LOGFILE --查看当前数据库系统的重做日志组的日志成员的存储目录、文件名和状态信息 V
LOGFILE−−查看当前数据库系统的重做日志组的日志成员的存储目录、文件名和状态信息VINSTANCE --查看实例信息
V$DATABASE --查看当前数据库的信息#