这两天看了盖国强老师的<<深入浅出>>,很佩服盖老师钻研的精神。书中常用到一个查询语句,为了获取当前会话的跟踪文件路径,sql如下:

 SELECT d.VALUE
|| '/'
|| LOWER (RTRIM (i.INSTANCE, CHR (0)))
|| '_ora_'
|| p.spid
|| '.trc' trace_file_name
FROM
(SELECT p.spid FROM v$mystat m, v$session s, v$process p WHERE m.statistic# = 1 AND s.SID = m.SID AND p.addr = s.paddr) p, ----获取当前会话的系统进程id
(SELECT t.INSTANCE FROM v$thread t, v$parameter v WHERE v.NAME = 'thread' AND (v.VALUE = 0 OR t.thread# = TO_NUMBER (v.VALUE))) i, ----->获取实例名
(SELECT VALUE FROM v$parameter WHERE NAME = 'user_dump_dest') d ; ---->获取跟踪文件的主路径

语句中包含了视图 ---->v$mystat  v$thread  v$ parameter  v$session  v$process

对于v$mystat视图在网上查了一下就出现了,v$sesstat,v$statname,v$sysstat

一  v$mystat v$sesstat v$sysstat v$statname视图

v$mystat,v$sesstat是用来分别统计会话级别和自实例起动以来数据库各种统计信息的。两个视图结构一致,只是统计数据不一致。可以说v$mystatv$sesstat的子集。v$mystat视图中只会有当前用户的会话信息,v$sesstat会有整个实例内所有会话信息

名称                       是否为空?         类型
-----------------------   --------    -------------------------
SID                                                          NUMBER                                 SID表示会话编号,与v$session中SID相对应。
STATISTIC#                                            NUMBER                                 STATISTIC#  表示统计项
VALUE                                                     NUMBER                                 VALUE       表示统计项相关的值

v$statname,v$sysstat视图结构的差别就是v$sysstatv$statname多一个value列。

 1 SQL> desc v$sysstat;
2 Name Null? Type
3 ----------------------- -------- ----------------------------
4 STATISTIC# NUMBER  表示统计项
5 NAME VARCHAR2(64) 统计名
6 CLASS NUMBER 统计类数字:1 - User 2 - Redo 4 - Enqueue 8 - Cache 16 - OS 32 - Real Application Clusters 64 - SQL 128 - Debug
7 VALUE NUMBER 统计得到的值
8 STAT_ID NUMBER 统计信息的标识符 select * from
(select STATISTIC#,NAME,CLASS, STAT_ID from v$sysstat
minus
select STATISTIC#,NAME, CLASS,STAT_ID from v$statname) ;

> no rows selected

   查某条DML语句所产生的redo信息。可以这样写:
   select value from v$mystat t,v$statname t1 where t.STATISTIC# = t1.STATISTIC# and t1.NAME = 'redo size'

   二 v$thread  v$ parameter  v$session  v$process视图

   

 SQL> desc  v$process
1 Name Null? Type
--------------------- -------- ----------------------------
ADDR RAW(8) ---->进程状态对象的地址
PID NUMBER ---->Oracle进程标识符
SPID VARCHAR2(24) ---->系统进程id
PNAME VARCHAR2(5) ---->进程名
USERNAME VARCHAR2(15) ---->系统用户名
SERIAL# NUMBER ---->进程序列号
TERMINAL VARCHAR2(30) ---->操作系统终端标识符
PROGRAM VARCHAR2(48) ---->正在进行的程序
TRACEID VARCHAR2(255) ---->跟踪文件标识符
TRACEFILE VARCHAR2(513) ---->跟踪文件路劲
BACKGROUND VARCHAR2(1) ---->对于系统后台进程为1;对于前台进程或非系统后台进程为空
LATCHWAIT VARCHAR2(16) ---->进程正在等待的闩锁的地址;如果没有,则为空
LATCHSPIN VARCHAR2(16) ---->
PGA_USED_MEM NUMBER ---->进程当前使用的pga内存
PGA_ALLOC_MEM NUMBER ---->进程当前分配的PGA内存(包括服务器进程尚未释放到操作系统的可用PGA内存)
PGA_FREEABLE_MEM NUMBER ---->分配的可释放的PGA内存
PGA_MAX_MEM NUMBER ---->进程分配的最大PGA内存
 SQL> desc v$thread;
Name Null? Type
------------------------------- -------- ----------------------------
THREAD# NUMBER ---->线程编号
STATUS VARCHAR2(6) ---->线程状态
ENABLED VARCHAR2(8) ---->已启用状态:已禁用,(已启用)专用,或(已启用)公用
GROUPS NUMBER ---->分配给此线程的日志组数
INSTANCE VARCHAR2(80) ---->实例名
OPEN_TIME DATE ---->上次打开线程的日期
CURRENT_GROUP# NUMBER ---->当前日志组
SEQUENCE# NUMBER ---->当前日志序列号
CHECKPOINT_CHANGE# NUMBER ---->最后一个检查点的SCN
CHECKPOINT_TIME DATE ---->最后一个检查点时间
ENABLE_CHANGE# NUMBER ---->启用线程的SCN
ENABLE_TIME DATE ---->启用SCN的时间
DISABLE_CHANGE# NUMBER ---->禁用线程的SCN
DISABLE_TIME DATE ---->禁用线程的SCN
LAST_REDO_SEQUENCE# NUMBER ---->上次由lgwr写入的重做序列号
LAST_REDO_BLOCK NUMBER ---->上次由lgwr写入的重做块
LAST_REDO_CHANGE# NUMBER ---->线程的上次重做的SCN
LAST_REDO_TIME DATE ---->线程的上次重做的时间
 SQL> desc v$parameter;
Name Null? Type
----------------------------------------- -------- ----------------------------
NUM NUMBER ---->编号
NAME VARCHAR2(80) ---->参数名称
TYPE NUMBER ---->参数类型1 - Boolean 2 - String 3 - Integer 4 - Parameter file 5 - Reserved 6 - Big integer
VALUE VARCHAR2(4000) ---->参数的值
DISPLAY_VALUE VARCHAR2(4000) ---->用户友好格式的参数值。例如,如果值列显示大整数参数的值262144,则显示值列将显示值256K。
ISDEFAULT VARCHAR2(9) ---->是否为默认值
ISSES_MODIFIABLE VARCHAR2(5) ---->指示参数是否可以用alter session(true)更改(false)
ISSYS_MODIFIABLE VARCHAR2(9) ---->指示参数是否可以使用alter system进行更改,以及更改何时生效:immediate,deferred,false
ISINSTANCE_MODIFIABLE VARCHAR2(5) ---->对于可以用alter system更改的参数,指示每个实例的参数值是否可以不同(true)
ISMODIFIED VARCHAR2(10) ---->指示在实例启动后是否修改了参数:
ISADJUSTED VARCHAR2(5) ---->指示Oracle是否将输入值调整为更合适的值
ISDEPRECATED VARCHAR2(5) ---->指示参数是否已被弃用(true)或否(false)
ISBASIC VARCHAR2(5) ---->指示参数是否为基本参数(true)或非基本参数(false)
DESCRIPTION VARCHAR2(255) ---->参数说明
UPDATE_COMMENT VARCHAR2(255) ---->与最新更新关联的注释
HASH NUMBER ---->参数名的哈希值
 由于v$session视图列过多,我只截取了部分
 1 SQL> desc v$session;
Name Null? Type
--------------------------------------- -------- ----------------------------
SADDR RAW(8) ---->session地址
SID NUMBER ---->sessionID
SERIAL# NUMBER ---->会话序列号。用于唯一标识会话的对象。确保在会话结束且另一个会话以相同的会话ID开始时,会话级命令应用于正确的会话对象。
AUDSID NUMBER ---->审核会话ID
PADDR RAW(8) ---->拥有会话的进程的地址
USER# NUMBER ---->Oracle用户标识符
USERNAME VARCHAR2(30) ---->oracle用户名
COMMAND NUMBER ---->正在执行命令(已分析最后一条语句)。此命令列中的值0表示命令未记录在v$session中。
OWNERID NUMBER ---->
TADDR VARCHAR2(16) ---->事物状态的地址
LOCKWAIT VARCHAR2(16) ---->会话正在等待的锁的地址;如果没有,则为空
STATUS VARCHAR2(8) ---->会话状态:active-当前正在执行SQL的会话;inactive-会话处于非活动状态,没有配置的限制或尚未超过配置的限制;killed-标记为要杀死的会话;cache-会话临时缓存以供Oracle*xa使用;sniped-超出某些配置限制的非活动会话(例如,为资源管理器使用者组指定的资源限制或用户配置文件中指定的空闲时间)。此类会话将不允许再次处于活动状态。
SERVER VARCHAR2(9) ---->Server type:DEDICATED SHARED PSEUDO POOLED NONE
SCHEMA# NUMBER ---->schema用户标识符
SCHEMANAME VARCHAR2(30) ---->schema用户名
OSUSER VARCHAR2(30) ---->操作系统客户端用户名
PROCESS VARCHAR2(24) ---->操作系统客户端进程ID
MACHINE VARCHAR2(64) ---->操作系统计算机名
PORT NUMBER ---->客户端端口号
TERMINAL VARCHAR2(30) ---->操作系统终端名称
PROGRAM VARCHAR2(48) ---->操作系统程序名
TYPE VARCHAR2(10) ---->session type
SQL_ADDRESS RAW(8) ---->与sql_hash_值一起使用,以标识当前正在执行的sql语句

      

oracle常用视图v$mystat v$sesstat v$sysstat v$statname v$thread v$ parameter v$session v$process的更多相关文章

  1. oracle常用视图介绍

    oracle常用视图介绍---------------------2013/10/04(last updated) dba_开头:   dba_users     数据库用户信息   dba_segm ...

  2. 动态性能视图v$mystat,v$sesstat,v$statname

    视图说明: v$mystat-------> 当前会话统计 v$sesstat------> 按会话进行分组统计 v$sysstat-------> 当系统的整体统计 v$statn ...

  3. oracle 常用视图和表

    1.查看当前用户的基本信息 select * from user_users 2.查看当前用户的角色 select * from user_role_privs 3.查看当前用户的系统权限和表权限 s ...

  4. oracle动态视图(一)stat

    1v$mystat,v$sesstat,v$sysstat是用来分别统计用户级,会话级,系统级信息的. SID                                 NUMBER STATI ...

  5. ORACLE常用性能监控SQL【一】

    目录(?)[+] 系列 ORACLE常用性能监控SQL[一] ORACLE常用性能监控SQL[二] Oracle-动态性能视图解读 系列 死锁后的解决办法 生成Kill Session语句 查看导致死 ...

  6. Oracle常用傻瓜问题1000问

    Oracle常用傻瓜问题1000问 大家在应用ORACLE的时候可能会遇到很多看起来不难的问题, 特别对新手来说, 今天我简单把它总结一下, 发布给大家, 希望对大家有帮助! 和大家一起探讨, 共同进 ...

  7. Oracle常用SQL查询(2)

    三.查看数据库的SQL 1 .查看表空间的名称及大小 select  t.tablespace_name,  round ( sum (bytes / ( 1024 * 1024 )), 0 ) ts ...

  8. Oracle常用语句集合

    oracle常用经典SQL查询 常用SQL查询: .查看表空间的名称及大小 )),) ts_size from dba_tablespaces t, dba_data_files d where t. ...

  9. ORACLE 常用SQL查询

    一.ORACLE的启动和关闭 1 .在单机环境下 要想启动或关闭ORACLE系统必须首先切换到ORACLE用户,如下 su  -  oracle a.启动ORACLE系统 oracle > sv ...

随机推荐

  1. Spring Boot—20Zookeeper

    https://docs.spring.io/spring-boot/docs/2.0.1.RELEASE/reference/htmlsingle/ pom.xml <dependency&g ...

  2. 深度学习GPU集群管理软件 OpenPAI 简介

    OpenPAI:大规模人工智能集群管理平台 2018年5月22日,在微软举办的“新一代人工智能开放科研教育平台暨中国高校人工智能科研教育高峰论坛”上,微软亚洲研究院宣布,携手北京大学.中国科学技术大学 ...

  3. 微信小程序上传Excel文本文件功能

    问题: 在开发过程中会发现微信小程序有很多功能都还不能满足我们的需求,谁叫客户就是上帝呢,前几天小编遇到了这么个问题,就是用微信小程序上传文件,但是还以为微信带有这个模块,可是查了许久还是没有找到,只 ...

  4. Week3——文档代码分析

    该段代码代码显示了不使用异步处理的基本servlet: @WebServlet(urlPatterns={"/syncservlet"}) public class SyncSer ...

  5. C#判断奇偶数的函数

    // 现代流行的"程序员"public static bool IsOdd(int n) {     while (true)    {        switch (n)     ...

  6. 最常见到的runtime exception 异常

    ArithmeticException, 算术异常ArrayStoreException, 将数组类型不兼容的值赋值给数组元素时抛出的异常BufferOverflowException, 缓冲区溢出异 ...

  7. 2.HTML标签

       <a>      链接标签 1) <a href=“#”>这是个链接</a> 表示空链接 2) 未访问过的链接 显示蓝色字体并带下划线;访问过的链接 显示紫色 ...

  8. 记开发个人图书收藏清单小程序开发(三)DB设计

    主要是参考豆瓣的图书查询接口: https://api.douban.com/v2/book/isbn/:9780132350884 返回内容如下: { "rating": { & ...

  9. Oracle GI 日志收集工具 - TFA

    1.TFA的目的: TFA是个11.2版本上推出的用来收集Grid Infrastructure/RAC环境下的诊断日志的工具,它可以用非常简单的命令协助用户收集RAC里的日志,以便进一步进行诊断:T ...

  10. RHEL7:如何配置I / O调度程序

    介绍 I / O调度程序用于优化磁盘上的读/写. RHEL 7中有三种类型的I / O调度程序(也称为I / O电梯): CFQ(C fullly F air Q ueuing)促进来自实时流程的I ...