概念
- YashanDB提供一系列系统视图,向用户展现数据库的各项静态数据,及运行过程中的各项实时动态数据,具体包括动态视图和静态视图:
- 动态性能视图:动态视图为系统提供的以V$的视图,用于实时展现正处于数据库运行中的各项数据,尤其与性能相关数据,用户通过查询这些视图,对系统进行管理和优化。
- 数据字典(静态视图):根据数据库的结构定义,展现整个数据库的全局视图。包括DBA视图,ALL视图和USER视图。

数据字典(静态视图)
- 用户通过查询静态视图,对系统进行管理和优化。
- DBA视图:记录数据库实例的所有对象的信息,如DBA_TABLES包含数据库实例中所有表的信息,DBA视图的信息包含USER和ALL的全部信息。
- USER视图:记录当前用户对象的信息,如USER_TABLES包含当前用户创建的所有表。
- ALL视图:记录当前用户对象的信息及被授权访问的对象信息。
- 例如,下面三个视图之间的关系为:
- DBA_TABLES >= ALL_TABLES >= USER_TABLES
- DBA_TABLES:DBA权限拥有者可以访问的所有表。
- ALL_TABLES:当前用户所拥有的或者被授权可以访问的所有表。
- USER_TABLES:当前用户所拥有的所有表。
- 所以当某一用户拥有DBA权限时时,DBA_TABLES 与 ALL_TABLES 是等价的。
- OPEN阶段可以通过查看DBA_VIEWS视图来查询存在的静态视图名称。
SELECT VIEW_NAME FROM DBA_VIEWS;

- DBA_TABLES本视图显示所有的表,包括系统表的信息。下面SQL查看SALES用户属主的表。
SELECT TABLE_NAME,OWNER FROM DBA_TABLES WHERE OWNER='SALES';
- DBA_INDEXES本视图显示所有的索引信息。下面SQL查看SALES用户属主的索引。
SELECT INDEX_NAME,OWNER FROM DBA_INDEXES WHERE OWNER='SALES';


动态性能视图
- 动态视图:
动态视图为系统提供的以V$开头,用于实时展现正处于数据库运行中的各项数据,尤其与性能相关数据,用户通过查询这些视图,对系统进行管理和优化。
- 动态视图的特点:
- 实时变化。
- 将系统内部的信息以视图的方式呈现。
- 不依赖于用户或者系统内部表。
- 在启动的阶段自动加载。
- NOMOUNT/MOUNT/OPEN阶段所加载的动态视图都不一样。
- OPEN阶段可以通过查看V$DYNAMIC_VIEWS视图来查询存在的动态视图名称。
SELECT NAME FROM V$DYNAMIC_VIEWS;

- V$SESSION本视图显示当前连接到数据库所有会话信息。下面SQL是查询当前连接数据库的非空用户的会话信息。
SELECT SID,SERIAL#,USERNAME FROM V$SESSION WHERE USERNAME IS NOT NULL;

- V$PROCESS本视图显示系统中所有线程信息。下面SQL查看当前数据库全部的工作线程。
SELECT NAME,THREAD_ID,STATUS FROM V$PROCESS WHERE NAME='WORKER';

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




