`
benx
  • 浏览: 276272 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

有用的v$视图脚本

阅读更多
1、基本的数据库信息
版本信息:
select * from v$version;
数据库信息:
Select * from v$database;

2、自动工作量仓库自动工作量(AWR)的基本信息
AWR 使用多少空间? 
Select occupant_name, occupant_desc, space_usage_kbytes
  from v$sysaux_occupants
 where occupant_name like '%AWR%';

系统上最原始的 AWR 信息是什么? 
select dbms_stats.get_stats_history_availability from dual;

什么是 AWR 信息的保留期? 
select dbms_stats.get_stats_history_retention from dual;

将 AWR 信息的保留期更改为 15 天? 
EXEC dbms_stats.alter_stats_history_retention(15);

3、基本的许可信息
select * from v$license;


4、数据库中已安装的产品项
select * from v$option;

5、内存分配摘要
select * from   v$sga;

内存分配的细节
select * from v$sgastat;

6、V$PARAMETER中发现init.ora 的设置
select * from v$parameter;

7、测定数据的命中率
select 1 - (sum(decode(name, 'physical reads', value, 0)) /
       (sum(decode(name, 'db block gets', value, 0)) +
       (sum(decode(name, 'consistent gets', value, 0))))) "Read Hit Ratio"
  from v$sysstat;


测定数据字典的命中率
select sum(gets),
       sum(getmisses),
       (1 - (sum(getmisses) / (sum(gets) + sum(getmisses)))) * 100 HitRate
  from v$rowcache;

测定共SQL和 PL/SQL的命中率
select sum(pins) "Executions",
       sum(pinhits) "Hits",
       ((sum(pinhits) / sum(pins)) * 100) "PinHitRatio",
       sum(reloads) "Misses",
       ((sum(pins) / (sum(pins) + sum(reloads))) * 100) "RelHitRatio"
  from v$librarycache;


通过V$SQLAREA查找有问题的查询
select b.username username,
       a.disk_reads reads,
       a.executions exec,
       a.disk_reads / decode(a.executions, 0, 1, a.executions) rds_exec_ratio,
       a.command_type,
       a.sql_text Statement
  from v$sqlarea a, dba_users b
 where a.parsing_user_id = b.user_id
   and a.disk_reads > 10000
 order by a.disk_reads desc;

检查用户的当前操作及其使用的资源
select a.sid, a.username, s.sql_text
  from v$session a, v$sqltext s
 where a.sql_address = s.address
   and a.sql_hash_value = s.hash_value
 order by a.username, a.sid, s.piece;


哪些用户执行了大量的物理磁盘和内存读操作
select a.username,
       b.block_gets,
       b.consistent_gets,
       b.physical_reads,
       b.block_changes,
       b.consistent_changes
  from v$session a, v$sess_io b
 where a.sid = b.sid
 order by a.username;


查找用户正在访问的对象
select a.sid, a.username, b.owner, b.object, b.type
  from v$session a, v$access b
 where a.sid = b.sid;


确定锁定问题
select /*+ ordered */
 b.username, b.serial#, d.id1, a.sql_text
  from v$lock d, v$session b, v$sqltext a
 where b.lockwait = d.kaddr
   and a.address = b.sql_address
   and a.hash_value = b.sql_hash_value;

select /*+ ordered */
 a.serial#, a.sid, a.username, b.id1, c.sql_text
  from v$lock b, v$session a, v$sqltext c
 where b.id1 in (select /*+ ordered */
                 distinct e.id1
                   from v$lock e, v$session d
                  where d.lockwait = e.kaddr)
   and a.sid = b.sid
   and c.hash_value = a.sql_hash_value
   and b.request = 0;

select /*+ ordered */
 username,
 v$lock.sid,
 trunc(id1 / power(2, 16)) rbs,
 bitand(id1, to_number('ffff', 'xxxx')) + 0 slot,
 id2 seq,
 lmode,
 request
  from v$lock, v$session
 where v$lock.type = 'TX'
   and v$lock.sid = v$session.sid;


关闭有问题的会话
select   username, sid, serial#, program, terminal 
from     v$session;

alter system kill session '11,18';



分享到:
评论

相关推荐

    Oracle的V$性能视图学习大全

    这个脚本会创建一系列以v_$为前缀的视图,允许用户访问底层的X$表。然而,用户不能直接访问v$视图,它们通常通过创建在v_$视图之上的V$视图来间接访问,这些V$视图在创建时以V$为前缀,为普通用户提供了访问权限。 ...

    oracle 动态性能(V$)视图

    在实际操作中,我们通常结合其他工具和方法,如Oracle Enterprise Manager、SQL*Plus的"SELECT * FROM V$..."命令或自定义脚本,来查询和分析V$视图。同时,理解V$视图的数据来源和更新机制也非常重要,这有助于正确...

    Oracle的V$性能视图学习大全.pdf

    V$视图前缀为"v_$",这些视图是在数据库安装期间由catalog.sql脚本创建的。这些视图虽然是基于X$表构建的,但它们不是实际被创建的,而是以二进制形式硬编码在Oracle数据库中。DBA和开发者可以通过V$视图来获取...

    oracle 动态性能视图大全

    为了使数据库管理员可以访问这些视图,需要运行CATALOG.SQL脚本,该脚本包含了V$视图的定义和同义词。 动态性能视图对于了解数据库的内部状态非常有用。它们提供了一个数据库运行情况的快照,包括但不限于系统负载...

    Oracle性能视图学习大全

    1. **创建与访问权限**:V$视图是在安装过程中由`catalog.sql`脚本创建的,创建时都带有前缀`v_$`。为了方便用户访问,又创建了一系列前缀为`V$`的视图,即所谓的“公共视图”,这些视图实际上是对`v_$`视图的封装。...

    Oracle动态性能视图

    - **创建**:V$视图是由`catalog.sql`脚本创建的。随着Oracle版本的更新,V$视图的数量也在不断增加。 - **访问**:每个V$视图实际上都是由`v_$`视图构成,用户不能直接访问`v_$`视图,而是通过访问对应的V$视图来...

    从四大方面介绍Oracle的数据字典

    这些视图通过catalog.sql脚本创建,同时创建相应的公共同义词。V$视图通常是通过其同义词访问的,这些同义词指向V_$视图,而V_$视图又基于实际的V$视图(这些视图基于X$表)。理解这一关系对于研究Oracle的对象关系...

    深入了解Oracle数据字典

    这个脚本首先创建V$和GV$视图,然后创建这两个视图的同义词,使得用户可以通过V$或GV$来访问数据。实际上,当我们查询V$视图时,我们实际上是通过V_$视图的同义词访问数据,而V_$视图本身又是基于实际的V$视图(基于...

    Oracle常用数据字典说明及常用脚本

    动态性能视图则提供数据库运行时的实时信息,这些视图以“V$”为前缀,是DBA监控和维护数据库的重要工具。 一、Oracle数据字典说明 1. V$ACCESS视图 V$ACCESS视图提供了关于数据库对象的访问信息,具体包括: - ...

    常用的动态性能视图说明(177个)

    - 动态性能视图通过运行`CATALOG.SQL`脚本来创建,该脚本包含视图的定义和公用同义词。 #### V$ 视图 (V$_Views) **定义:** - **V$视图**是动态性能视图的通用形式,由`V_$`标识,而`V$`则代表了这些视图的公共...

    ORACLE动态性能视图

    - 必须运行`CATALOG.SQL`脚本来创建这些视图及同义词。 **访问:** - 安装后,默认仅SYS用户或具有`SYSDBA`角色的用户能够访问这些视图。 - 动态性能视图通常以`V_$`为前缀,而其公共同义词则以`V$`为前缀。 - ...

    4数据字典和动态性能视图实验脚本.rar

    例如,`V$SESSION`视图提供了当前会话的信息,`V$SQL`视图记录了SQL语句的历史信息,`V$BUFFER_CACHE`展示了数据缓冲区的使用情况。 在实验脚本中,可能会包含如何查询这些数据字典视图和动态性能视图的示例,以...

    oracle j脚本

    这个脚本通过`V$SESSION`和`V$SESSION_EVENT`视图联合查询,可以获取活动会话的SID(会话标识符)、用户名、机器名、终端信息以及等待事件的总等待次数和超时次数。这对于识别性能瓶颈非常有帮助。 2. **查询会话...

    oracle-dba常用sql脚本分类文档.doc

    结合`v$rollstat`和`v$rollname`视图,可以了解回滚段的等待情况,分析是否存在锁竞争导致的性能问题。 3. **表空间I/O比例监控**: `v$filestat`和`dba_data_files`视图组合,用于监测表空间的物理读写操作,...

    Desktop.rar

    "oracle性能测试最常使用V$视图学习.txt"可能列出了在性能测试中常用的V$视图,如V$SESSION、V$SQL、V$SYSTEM_EVENT等,以及如何利用这些视图来分析和优化数据库性能。 5. **性能测试策略**:文档可能还会涉及性能...

    ORACLE精品脚本笔记

    2. **监控当前运行的SQL语句**:使用`v$session`和`v$sqltext`视图可以追踪当前数据库中正在执行的SQL语句,包括操作的用户名和SQL文本,这对于找出资源消耗大的查询非常有用。 3. **监控字典缓冲区**:通过查询`v$...

Global site tag (gtag.js) - Google Analytics