oracle 动态性能视图 v$session(oracle动态参数和静态参数)
sinye56 2024-10-07 14:33 11 浏览 0 评论
v$session
动态性能视图v$session
显示每个当前会话的会话信息,包含下面一些字段:
SADDR: 会话地址
SID: 会话标识符
SERIAL#: 会话序列号。用于唯一标识会话的对象。如果会话结束,而另一个会话以相同的会话ID开始,则保证会话级命令应用于正确的会话对象。
AUDSID: 审核会话ID,如果数据库配置为统一审核,则此列显示统一审核会话ID,如果数据库配置为混合模式审核,则此列显示传统审核会话ID
PADDR: 拥有会话的进程的地址
USER#: Oracle用户标识符
USERNAME: Oracle用户名
COMMAND: 正在执行命令(已分析最后一条语句)。通过运行此SQL查询,可以找到此command列中返回的任何值n的命令名:
SELECT command_name FROM v$sqlcommand WHERE command_type = n;
此COMMAND列中的值为0表示该命令未记录在V$SESSION中。
OWNERID: 拥有可迁移会话的用户的标识符;如果值为2147483644,则列内容无效,对于使用并行从属的操作,将此值解释为4字节值。低位2字节表示会话号,高位字节表示查询协调器的实例ID。
TADDR: 事务状态对象的地址
LOCKWAIT: 会话等待的锁的地址;如果没有,则为NULL
STATUS: 会话状态:
ACTIVE-会话当前正在执行SQL
INACTIVE-会话处于非活动状态,没有配置限制或尚未超过配置限制
KILLED-会话标记为终止
CACHED-暂时缓存会话以供Oracle*XA使用
SNIPED-超出某些配置限制的非活动会话(例如,为资源管理器使用者组指定的资源限制或用户配置文件中指定的idle_time)。此类会话将不允许再次激活。
SERVER: 服务器类型
SCHEMA#: 架构用户标识符
SCHEMANAME: 架构用户名
OSUSER: 操作系统客户端用户名
PROCESS: 操作系统客户端进程ID
MACHINE: 操作系统机器名
PORT: 客户端端口号
TERMINAL: 操作系统终端名
PROGRAM: 操作系统程序名
TYPE: 会话类型
SQL_ADDRESS: 与SQL_HASH_VALUE一起使用,以标识当前正在执行的SQL语句
SQL_HASH_VALUE: 与SQL_ADDRESS一起使用,以标识当前正在执行的SQL语句
SQL_ID: 当前正在执行的SQL语句的SQL标识符
SQL_CHILD_NUMBER: 当前正在执行的SQL语句的子编号
SQL_EXEC_START: 此会话的当前执行的SQL的执行开始时间;如果SQL_ID为NULL,则为NULL。
SQL_EXEC_ID: 已执行SQL的标识符
PREV_SQL_ADDR: 与PREV_HASH_VALUE一起使用,以标识最后执行的SQL语句
PREV_HASH_VALUE: 与SQL_HASH_VALUE一起使用,以标识最后执行的SQL语句
PREV_SQL_ID: 最后执行的SQL语句的SQL标识符
PREV_CHILD_NUMBER: 最后执行的SQL语句的子编号
PREV_EXEC_START: 最后执行的SQL语句的执行开始时间
PREV_EXEC_ID: 最后执行的SQL语句的SQL执行标识符
PLSQL_ENTRY_OBJECT_ID: 堆栈上最顶层PL/SQL子程序的对象ID
PLSQL_ENTRY_SUBPROGRAM_ID: 堆栈上最顶层PL/SQL子程序的子程序ID
PLSQL_OBJECT_ID: 当前执行的PL/SQL子程序的对象ID
PLSQL_SUBPROGRAM_ID: 当前执行的PL/SQL对象的子程序ID
MODULE: 通过调用DBMS_APPLICATION_INFO.SET_MODULE程序设置的当前执行模块的名称
MODULE_HASH: 模块列的哈希值
ACTION: 通过调用DBMS_APPLICATION_INFO.SET_ACTION程序设置的当前执行操作的名称
ACTION_HASH: 执行操作的哈希值
CLIENT_INFO: 由DBMS_APPLICATION_INFO.SET_CLIENT_INFO程序设置的信息。
FIXED_TABLE_SEQUENCE: 它包含一个数字,每当会话完成对数据库的调用并且从动态性能表中进行了干预选择时,该数字就会增加。性能监视器可以使用此列监视数据库中的统计信息。性能监视器每次查看数据库时,只需查看当前处于活动状态的会话,或者此列中的值高于性能监视器上次看到的最高值的会话。自性能监视器上次查看数据库以来,所有其他会话都处于空闲状态。
ROW_WAIT_OBJ#: 包含在ROW_WAIT_ROW#中指定的行的表的对象ID。
ROW_WAIT_FILE#: 包含ROW_WAIT_ROW#中指定行的数据文件的标识符。仅当会话当前正在等待另一个事务提交且ROW_WAIT_OBJ#的值不是-1时,此列才有效。
ROW_WAIT_BLOCK#: 包含ROW_WAIT_ROW#中指定行的块的标识符。仅当会话当前正在等待另一个事务提交且ROW_WAIT_OBJ#的值不是-1时,此列才有效。
ROW_WAIT_ROW#: 当前行被锁定。仅当会话当前正在等待另一个事务提交且ROW_WAIT_OBJ#的值不是-1时,此列才有效。
TOP_LEVEL_CALL#: Oracle顶级呼叫码
LOGON_TIME: 登录时间
LAST_CALL_ET: 如果会话STATUS当前为ACTIVE,则该值表示自会话激活以来经过的时间(以秒为单位)。如果会话STATUS当前为INACTIVE,则该值表示自会话变为非活动状态以来经过的时间(以秒为单位)。
PDML_ENABLED: 该列已被PDML_STATUS列代替
FAILOVER_TYPE: 指示是否以及在多大程度上为会话启用了透明应用程序故障切换(TAF): NONE—已对此会话禁用故障转移;SESSION-客户端可以在断开连接后故障转移其会话;SELECT-客户端也可以对正在进行的查询进行故障转移
FAILOVER_METHOD: 说明会话的透明应用程序故障转移方法。
FAILED_OVER: 说明会话是否运行在故障转移模式和故障转移是否已经发生或没有发生。
RESOURCE_CONSUMER_GROUP: 会话当前的资源使用组的名称。
PDML_STATUS: 如果是ENABLE,该会话处于PARALLEL DML可用模式,如果是DISABLED,PARALLEL DML不可用。如果是FORCE,该会话已经变成强制PARALLEL DML。
PDDL_STATUS: 如果是ENABLE,该会话处于PARALLEL DDL可用模式,如果是DISABLED,PARALLEL DDL不可用。如果是FORCE,该会话已经变成强制PARALLEL DDL。
PQ_STATUS: 如果是ENABLE,该会话处于PARALLEL DDL可用模式,如果是DISABLED,PARALLEL DDL不可用。如果是FORCE,该会话已经变成强制PARALLEL DDL。
CURRENT_QUEUE_DURATION: 如果queued(1),则表示会话已排队。如果当前未排队,则值为0。
CLIENT_IDENTIFIER: 会话的客户端标识符
BLOCKING_SESSION_STATUS: 此列提供有关是否存在阻塞会话的详细信息:
VALID-存在阻塞会话,它在blocking_INSTANCE和blocking _session列中标识
NO HOLDER-没有会话阻止此会话
NOT IN WAIT-此会话未处于等待状态
UNKNOWN-阻塞会话未知
BLOCKING_INSTANCE: 阻塞会话的实例标识符。仅当BLOCKING_SESSION_STATUS的值为valid时,此列才有效。
FINAL_BLOCKING_SESSION_STATUS: 最后一个阻塞会话是等待链中的最后一个元素,它是通过跟踪从这个会话开始被另一个阻塞的会话来构造的。在循环等待链的情况下,等待链中的一个会话将被选择为最终阻止程序。
该列提供了有关是否存在最终阻塞会话的详细信息:
VALID-有一个最终阻塞会话,它在final_blocking_INSTANCE和final_LOCKING_session列中标识
NO HOLDER-没有会话阻止此会话
NOT IN WAIT-此会话未处于等待状态
UNKNOWN-最终阻塞会话未知
FINAL_BLOCKING_INSTANCE: 最终阻塞会话的实例标识符。仅当FINAL_BLOCKING_SESSION_STATUS的值为valid时,此列才有效。
FINAL_BLOCKING_SESSION: 阻塞会话的会话标识符。仅当FINAL_BLOCKING_SESSION_STATUS的值为valid时,此列才有效。
SEQ#: 唯一标识当前或上次等待的数字(每次等待递增)。
EVENT#: 如果会话当前正在等待,则为会话正在等待的资源或事件的编号。如果会话未处于等待状态,则为会话最近等待的资源或事件的编号。
EVENT: 如果会话当前正在等待,则会话正在等待的资源或事件。如果会话未处于等待状态,则为会话最近等待的资源或事件。
P1TEXT: 第一个等待事件参数的描述。
P1: 第一个等待事件参数(十进制)。
P1RAW: 第一个等待事件参数(十六进制)。
P2TEXT: 第二个等待事件参数的描述。
P2: 第二个等待事件参数(十进制)。
P2RAW: 第二个等待事件参数(十六进制)。
P3TEXT: 第三个等待事件参数的描述。
P3: 第三个等待事件参数(十进制)。
P3RAW: 第三个等待事件参数(十六进制)。
WAIT_CLASS_ID: 等待事件类的标识符。
WAIT_CLASS#: 等待事件类的编码。
WAIT_CLASS: 等待事件类的名称。
WAIT_TIME: 此列已被弃用,取而代之的是WAIT_TIME_MICRO和STATE列。
SECONDS_IN_WAIT: 此列已被弃用,取而代之的是WAIT_TIME_MICRO列和TIME_SINCE_LAST_WAIT_MICRO列。
STATE: 等待状态:
WAITING-会话当前正在等待
WAITED UNKNOWN TIME-上次等待的持续时间未知;这是参数TIMED_STATISTICS设置为false时的值
WAITED SHORT TIME-上次等待时间不到百分之一秒
WAITED KNOWN TIME-上次等待的持续时间在WAIT_TIME列中指定
WAIT_TIME_MICRO: 等待的时间量(以微秒为单位)。如果会话当前正在等待,则值为当前等待所花费的时间。如果会话当前未处于等待状态,则该值为上次等待中等待的时间量。
TIME_REMAINING_MICRO: 值的解释如下:
大于0-当前等待的剩余时间(以微秒为单位)
0-当前等待已超时
-1-会话可以在当前等待中无限期等待
NULL-会话当前未等待
SERVICE_NAME: 会话的服务名称。
SQL_TRACE: 说明SQL跟踪是否开启。
SQL_TRACE_WAITS: 说明等待跟踪是否开启。
SQL_TRACE_BINDS: 说明绑定跟踪是否开启。
SQL_TRACE_PLAN_STATS: 在跟踪文件中为每个游标转储行源统计信息的频率: never、first_execution、all_executions
SESSION_EDITION_ID: 显示会话中sys_context(‘USERENV’, ‘SESSION_EDITION_ID’)报告的值。
CREATOR_ADDR: 创建进程或回路的地址。
CREATOR_SERIAL#: 创建进程或回路的序列号。
ECID: 执行上下文标识符(由Application Server发送)。
SQL_TRANSLATION_PROFILE_ID: SQL转换配置文件的对象号。
PGA_TUNABLE_MEM: 可调PGA内存量。可调内存是Vp r o c e s s 中的 P G A A L L O C M E M 减去 V process中的PGA_ALLOC_MEM减去Vprocess中的PGA
ALLOCMEM减去VSESSION中的PGA_TUNABLE_MEM。
SHARD_DDL_STATUS: 说明共享DDL在当前进程中是否可用。
CON_ID: 数据所属的容器的ID。可能的值包括:
0: 此值用于包含属于整个CDB的数据的行。此值也用于非CDB中的行。
1: 此值用于包含仅属于根目录的数据的行
n: 其中n是包含数据的行的适用容器ID
EXTERNAL_NAME: 数据库用户的外部名称。对于企业用户,返回Oracle Internet Directory DN。
PLSQL_DEBUGGER_CONNECTED: 说明会话是否连接到PL/SQL的debugger。
相关推荐
- 程序员:JDK的安装与配置(完整版)_jdk的安装方法
-
对于Java程序员来说,jdk是必不陌生的一个词。但怎么安装配置jdk,对新手来说确实头疼的一件事情。我这里以jdk10为例,详细的说明讲解了jdk的安装和配置,如果有不明白的小伙伴可以评论区留言哦下...
- Linux中安装jdk并配置环境变量_linux jdk安装教程及环境变量配置
-
一、通过连接工具登录到Linux(我这里使用的Centos7.6版本)服务器连接工具有很多我就不一一介绍了今天使用比较常用的XShell工具登录成功如下:二、上传jdk安装包到Linux服务器jdk...
- 麒麟系统安装JAVA JDK教程_麒麟系统配置jdk
-
检查检查系统是否自带java在麒麟系统桌面空白处,右键“在终端打开”,打开shell对话框输入:java–version查看是否自带java及版本如图所示,系统自带OpenJDK,要先卸载自带JDK...
- 学习笔记-Linux JDK - 安装&配置
-
前提条件#检查是否存在JDKrpm-qa|grepjava#删除现存JDKyum-yremovejava*安装OracleJDK不分系统#进入安装文件目...
- Linux新手入门系列:Linux下jdk安装配置
-
本系列文章是把作者刚接触和学习Linux时候的实操记录分享出来,内容主要包括Linux入门的一些理论概念知识、Web程序、mysql数据库的简单安装部署,希望能够帮到一些初学者,少走一些弯路。注意:L...
- 测试员必备:Linux下安装JDK 1.8你必须知道的那些事
-
1.简介在Oracle收购Sun后,Java的一系列产品就被整合到Oracle官网中,打开官网乍眼一看也不知道去哪里下载,还得一个一个的摸索尝试,而且网上大多数都是一些Oracle收购Sun前,或者就...
- Linux 下安装JDK17_linux 安装jdk1.8 yum
-
一、安装环境操作系统:JDK版本:17二、安装步骤第一步:下载安装包下载Linux环境下的jdk1.8,请去官网(https://www.oracle.com/java/technologies/do...
- 在Ubuntu系统中安装JDK 17并配置环境变量教程
-
在Ubuntu系统上安装JDK17并配置环境变量是Java开发环境搭建的重要步骤。JDK17是Oracle提供的长期支持版本,广泛用于开发Java应用程序。以下是详细的步骤,帮助你在Ubuntu系...
- 如何在 Linux 上安装 Java_linux安装java的步骤
-
在桌面上拥抱Java应用程序,然后在所有桌面上运行它们。--SethKenlon(作者)无论你运行的是哪种操作系统,通常都有几种安装应用程序的方法。有时你可能会在应用程序商店中找到一个应用程序...
- Windows和Linux环境下的JDK安装教程
-
JavaDevelopmentKit(简称JDK),是Java开发的核心工具包,提供了Java应用程序的编译、运行和开发所需的各类工具和类库。它包括了JRE(JavaRuntimeEnviro...
- linux安装jdk_linux安装jdk软连接
-
JDK是啥就不用多介绍了哈,外行的人也不会进来看我的博文。依然记得读大学那会,第一次实验课就是在机房安装jdk,编写HelloWorld程序。时光飞逝啊,一下过了十多年了,挣了不少钱,买了跑车,娶了富...
- linux安装jdk,全局配置,不同用户不同jdk
-
jdk1.8安装包链接:https://pan.baidu.com/s/14qBrh6ZpLK04QS8ogCepwg提取码:09zs上传文件解压tar-zxvfjdk-8u152-linux-...
- 运维大神教你在linux下安装jdk8_linux安装jdk1.7
-
1.到官网下载适合自己机器的版本。楼主下载的是jdk-8u66-linux-i586.tar.gzhttp://www.oracle.com/technetwork/java/javase/downl...
- window和linux安装JDK1.8_linux 安装jdk1.8.tar
-
Windows安装JDK1.8的步骤:步骤1:下载JDK打开浏览器,找到JDK下载页面https://d.injdk.cn/download/oraclejdk/8在页面中找到并点击“下载...
- 最全的linux下安装JavaJDK的教程(图文详解)不会安装你来打我?
-
默认已经有了linux服务器,且有root账号首先检查一下是否已经安装过java的jdk任意位置输入命令:whichjava像我这个已经安装过了,就会提示在哪个位置,你的肯定是找不到。一般我们在...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- oracle忘记用户名密码 (59)
- oracle11gr2安装教程 (55)
- mybatis调用oracle存储过程 (67)
- oracle spool的用法 (57)
- oracle asm 磁盘管理 (67)
- 前端 设计模式 (64)
- 前端面试vue (56)
- linux格式化 (55)
- linux图形界面 (62)
- linux文件压缩 (75)
- Linux设置权限 (53)
- linux服务器配置 (62)
- mysql安装linux (71)
- linux启动命令 (59)
- 查看linux磁盘 (72)
- linux用户组 (74)
- linux多线程 (70)
- linux设备驱动 (53)
- linux自启动 (59)
- linux网络命令 (55)
- linux传文件 (60)
- linux打包文件 (58)
- linux查看数据库 (61)
- linux获取ip (64)
- linux进程通信 (63)