"Oracle动态性能视图(x$, v$, gv$, v_$, gv_$)是Oracle数据库中用于监控和分析系统性能的关键工具。这些视图提供了关于数据库运行时状态的实时信息,帮助管理员识别和解决性能问题。" Oracle动态性能视图主要由以下几个部分组成: 1. X$视图:X$视图是Oracle内部的内存结构,它们存储了操作系统级别的信息和数据库在运行时的详细状态数据。X$视图通常对非SYS用户不可见,但可以通过V$视图访问其内容。这些视图不支持DML操作(插入、更新、删除),因为它们是系统内部使用的。 2. V$视图:V$视图是由X$视图创建的,提供了一个面向用户的接口,用于查询数据库的各种运行时信息,如数据文件、会话、锁、等待事件等。例如,V$DATAFILE视图包含关于数据文件的信息,V$SESSION视图显示当前会话的详细情况。 3. GV$视图:GV$视图是全局版本的V$视图,允许跨多个实例查询性能信息,这对于RAC(Real Application Clusters)环境尤为重要。GV$视图可以收集整个集群数据库的状态信息。 4. V_$视图和GV_$视图:V_$视图是公开同义词,以V$开头,它们是对X$视图的封装,使得普通用户也能访问部分性能数据。GV_$视图则是全局的,以GV$开头,提供跨实例的性能监控。 在使用这些视图时,有一些注意事项: - 要访问X$视图,通常需要拥有SYSDBA权限。 - 通过V$FIXED_TABLE视图可以查看所有动态性能表和视图的信息。 - 在不同数据库状态(NOMOUNT, MOUNT, OPEN)下,可以访问到不同的动态性能视图信息。例如,在NOMOUNT状态下,只能获取SGA内存结构的信息;在MOUNT状态下,可以获取到更多与数据文件相关的元数据;而在OPEN状态下,可以获得最完整的运行时信息。 - 分析这些视图的数据可以帮助识别性能瓶颈,比如I/O延迟、CPU利用率、会话等待事件等。 - 使用动态性能视图进行性能调优时,应谨慎操作,避免对生产环境产生不必要的影响。 为了有效利用这些视图,可以编写SQL查询或使用Oracle自带的性能分析工具(如SQL*Plus、Enterprise Manager等)。对于复杂的性能问题,可能需要结合AWR(Automatic Workload Repository)和ASH(Active Session History)报告进行深入分析。 Oracle的动态性能视图是数据库管理员进行性能监控、故障诊断和优化的重要资源,通过理解和熟练使用这些视图,可以大大提高数据库的稳定性和效率。
一. 动态性能视图
1.1 动态性能图
动态性能视图属于数据字典,系统管理员用户 SYS 可以访问它们。 关于这部分的内容,参考我的Blog:
Oracle 数据字典
http://blog.csdn.net/tianlesoftware/archive/2010/09/04/5862508.aspx
动态性能视图在数据库打开和使用时不断进行更新,而且它们的内容主要与性能有关。虽然这些视图很像普通的数据库表,但它们不允许用户直接进行修改。这些视图提供内部磁盘结构和内存结构方面的数据。用户可以对这些视图进行查询,以便对系统进行管理与优化。
CATALOG.SQL 文件包含这些视图的定义以及公用同义词,必须运行CATALOG.SQL 创建这些视图及同义词。升级系统也后要执行这个脚本.
当数据库管理员启动某个例程时,数据库会自动建立动态性能视图;
当停止某个例程时,数据库又会自动删除这些动态性能视图。
数据字典的信息是从数据文件中取得; 而动态性能视图的信息则是从SGA内存以及控制文件中取得。所以,两者所反映的信息还是有很大差异的。数据库管理员利用这些动态性能视图,可以了解数据库运行的一些基本信息,为我们进行数据库维护以及数据库性能优化提供一些数据上的支持。
一般情况下,我们可以通过动态性能数据掌握两类重要的数据库运行信息。
(2)取得与磁盘和内存结构相关的其他信息。
在通常情况下,数据库不同的状态其动态性能视图还是有比较大的差异:
(1)数据库处于“NOMOUNT”状态。数据库启动例程时,Oracle数据库会打开参数文件,分配SGA内存并启动后台进程。此时,其实数据库还没有挂栽。此时,动态性呢视图收集的信息来源只有是SGA,而不会从控制文件中收集相关的信息。所以,动态性能视图的数量要少得多。
(2)当数据库处于MOUNT状态时,数据库会根据初始化参数打开所有的控制文件。所以,当例程处于Mount状态时,动态性能视图其收集到的信息就要第一个状态多的多。因为此时,动态性能视图还会去收集控制文件的相关信息。不过,此时动态性能视图所收集到的资料还不是最全的。
(3)当用户打开数据库时,Oracle系统会根据控制文件所记载的信息去打开所有的数据库文件以及重做日志。此时,数据库管理员除了可以从 SGA和控制文件中获取信息的动态性能视图外,还可能访问与Oracle数据库性能相关的动态性能视图,如会话等待时间等视图。另外需要注意一点,就是只有在这个状态时,我们才能够访问数据库的数据字典视图。
SYS owns the dynamic performance tables, whose names begin with V_$. Views are created on these tables, and then public synonyms prefixed with V$. For example, the V$DATAFILE view contains information about data files. The V$FIXED_TABLE view contains information about all of the dynamic performance tables and views.
从这段描述里,我们可以理解,通过V$FIXED_TBLE 视图可以查看几乎所有的动态性能表和视图。 V$是V_$的同义词。
1.2 V$, V_$, GV$, X$ 视图说明
剩余15页未读,继续阅读
- 粉丝: 1
- 资源: 14
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 李兴华Java基础教程:从入门到精通
- U盘与硬盘启动安装教程:从菜鸟到专家
- C++面试宝典:动态内存管理与继承解析
- C++ STL源码深度解析:专家级剖析与关键技术
- C/C++调用DOS命令实战指南
- 神经网络补偿的多传感器航迹融合技术
- GIS中的大地坐标系与椭球体解析
- 海思Hi3515 H.264编解码处理器用户手册
- Oracle基础练习题与解答
- 谷歌地球3D建筑筛选新流程详解
- CFO与CIO携手:数据管理与企业增值的战略
- Eclipse IDE基础教程:从入门到精通
- Shell脚本专家宝典:全面学习与资源指南
- Tomcat安装指南:附带JDK配置步骤
- NA3003A电子水准仪数据格式解析与转换研究
- 自动化专业英语词汇精华:必备术语集锦