在本视图中,每一个连接到数据库实例中的session都拥有一条记录。包括用户session及后台进程如DBWR,LGWR,arcchiver等等。
V$SESSION中的常用列
V$SESSION是基础信息视图,用于找寻用户SID或SADDR。不过,它也有一些列会动态的变化,可用于检查用户。如例:
SQL_HASH_VALUE,SQL_ADDRESS:这两列用于鉴别默认被session执行的SQL语句。如果为null或0,那就说明这个session没有执行任何SQL语句。PREV_HASH_VALUE和PREV_ADDRESS两列用来鉴别被session执行的上一条语句。
注意:当使用SQL*Plus进行选择时,确认你重定义的列宽不小于11以便看到完整的数值。
STATUS:这列用来判断session状态是:
Achtive:正执行SQL语句(waiting for/using a resource)
Inactive:等待操作(即等待需要执行的SQL语句)
Killed:被标注为删除
下列各列提供session的信息,可被用于当一个或多个combination未知时找到session。
Session信息
SID:SESSION标识,常用于连接其它列
SERIAL#:如果某个SID又被其它的session使用的话则此数值自增加(当一个 SESSION结束,另一个SESSION开始并使用了同一个SID)。
AUDSID:审查session ID唯一性,确认它通常也用于当寻找并行查询模式
USERNAME:当前session在Oracle中的用户名。
Client信息
数据库session被一个运行在数据库服务器上或从中间服务器甚至桌面通过SQL*Net连接到数据库的客户端进程启动,下列各列提供这个客户端的信息
OSUSER:客户端操作系统用户名
MACHINE:客户端执行的机器
TERMINAL:客户端运行的终端
PROCESS:客户端进程的ID
PROGRAM:客户端执行的客户端程序
要显示用户所连接PC的 TERMINAL、OSUSER,需在该PC的ORACLE.INI或Windows中设置关键字TERMINAL,USERNAME。
Application信息
调用DBMS_APPLICATION_INFO包以设置一些信息区分用户。这将显示下列各列。
CLIENT_INFO:DBMS_APPLICATION_INFO中设置
ACTION:DBMS_APPLICATION_INFO中设置
MODULE:DBMS_APPLICATION_INFO中设置
下列V$SESSION列同样可能会被用到:
ROW_WAIT_OBJ#
ROW_WAIT_FILE#
ROW_WAIT_BLOCK#
ROW_WAIT_ROW#
V$SESSION中的连接列
Column View Joined Column(s)
SID V$SESSION_WAIT,,V$SESSTAT,,V$LOCK,V$SESSION_EVENT,V$OPEN_CURSOR SID
(SQL_HASH_VALUE, SQL_ADDRESS) V$SQLTEXT, V$SQLAREA, V$SQL (HASH_VALUE, ADDRESS)
(PREV_HASH_VALUE, PREV_SQL_ADDRESS) V$SQLTEXT, V$SQLAREA, V$SQL (HASH_VALUE, ADDRESS)
TADDR V$TRANSACTION ADDR
PADDR V$PROCESS ADDR
示例:
1.查找你的session信息
SELECT SID, OSUSER, USERNAME, MACHINE, PROCESS
FROM V$SESSION WHERE audsid = userenv('SESSIONID');
2.当machine已知的情况下查找session
SELECT SID, OSUSER, USERNAME, MACHINE, TERMINAL
FROM V$SESSION
WHERE terminal = 'pts/tl' AND machine = 'rgmdbs1';
查找当前被某个指定session正在运行的sql语句。假设sessionID为100
select b.sql_text
from v$session a,v$sqlarea b
where a.sql_hashvalue=b.hash_value and a.sid=100
寻找被指定session执行的SQL语句是一个公共需求,如果session是瓶颈的主要原因,那根据其当前在执行的语句可以查看session在做些什么。
分享到:
相关推荐
学习动态性能表(六)--v$session_wait&v$session_event 学习动态性能表(七)--v$process 学习动态性能表(八)--v$lock&v$locked_object 学习动态性能表(九)--v$filestat 学习动态性能表(十)--v$session_longops ...
【学习动态性能表(11)--v$latch$v$latch_children】主要关注Oracle数据库中的动态性能视图,尤其是关于latch这一关键概念的监控和分析。latch是一种轻量级的锁定机制,用于保护SGA(System Global Area)中的共享...
`v$sysstat` 是Oracle数据库中的一个重要动态性能视图,它记录了数据库实例自启动以来的各种系统级别的统计信息,帮助DBA监控和优化数据库性能。这个视图提供了实例级别的资源使用情况,涵盖了事件计数、总量统计...
Oracle动态性能表,通常被称为V$视图,是Oracle数据库管理系统中的一个重要组成部分,它提供了对数据库运行时状态的实时信息。这些视图包含了丰富的数据库性能数据,对于DBA(数据库管理员)进行性能监控、问题诊断...
V$视图是一系列动态性能视图的前缀,它们提供当前数据库实例的运行时性能数据。这些视图中的信息对于数据库管理员(DBA)来说至关重要,因为它们包含了影响数据库性能的诸多因素,如系统资源使用情况、内存分配、SQL...
通过深入学习和理解这些动态性能表,我们可以更好地管理Oracle数据库,提升其性能,确保系统的稳定性和高效性。在实际工作中,结合SQL Trace、AWR(自动工作负载 Repository)和ASH(Active Session History)等工具...
通过对这些动态性能表的深入学习,数据库管理员能够更好地监控Oracle数据库的运行状态,及时发现并解决问题,提升整体系统的性能和稳定性。在实际工作中,结合性能监控工具和SQL优化工具,这些视图的数据将发挥巨大...
### Oracle 动态性能表学习:深入理解 v$sysstat #### 一、v$sysstat 视图概述 在 Oracle 数据库管理中,动态性能视图(Dynamic Performance Views)是一组特殊的内置视图,提供了关于数据库实例及其内部组件的...
其次,"v$"开头的表,也称为动态性能视图,是Oracle提供的一系列实时视图,用于监视数据库的运行状态和性能。"v$"视图的数据是瞬时的,反映了当前数据库的操作情况,如会话信息、SQL语句执行情况、等待事件等。比如...
5. **V$SESSION_WAIT**:揭示了每个会话当前正在等待的事件,有助于找出性能问题的根源,比如锁等待、I/O等待等。 6. **V$PROCESS**:包含了所有后台进程的信息,如进程ID、用户进程、状态等,对于跟踪进程行为和...
学习动态性能表 第一篇--v$sysstat 2007.5.23 按照OracleDocument中的描述,v$sysstat存储自数据库实例运行那刻起就开始累计全实例(instance-wide)的资源使用情况。 类似于v$sesstat,该视图存储下列的统计信息...
其中,`v$sysstat`是Oracle DBA们最为关注的动态性能表之一,它记录了数据库实例自启动以来的各种资源使用情况。本文将基于提供的内容对`v$sysstat`进行详细解读,并探讨其在性能监控和调优中的应用。 #### v$...
### Oracle性能视图学习大全详解 #### 一、引言 在Oracle数据库管理与优化领域,深入了解和利用Oracle性能视图(V$视图)至关重要。随着Oracle版本的不断升级,V$视图的数量也在不断增加,从Oracle 6时代的23个到...
Oracle提供了大量的动态性能视图(V$视图),通过查询它们可以获取数据库运行时的详细信息。例如,`V$SESSION`用于查看当前会话状态,`V$INSTANCE`显示实例信息,`V$SESSION_WAIT`揭示会话等待事件,而`V$SQL`和`V$...
总结来说,Oracle动态性能表是性能分析和调优的关键工具,通过对v$sysstat等视图的深入理解和有效利用,DBA可以更好地理解系统行为,定位性能瓶颈,并采取相应措施提升数据库的性能和效率。无论是监控系统资源的使用...
学习和掌握这些动态性能视图的使用,需要结合实际的数据库环境和性能问题进行实践。通过查询和分析这些视图,可以获取到宝贵的诊断信息,进而采取相应的优化措施,提高数据库的运行效率和响应速度。 总的来说,...
这些视图以V$开头,如V$SESSION、V$SYSTEM_EVENT和V$SQL等,它们提供了对数据库当前状态的快照,帮助管理员识别和解决性能问题。例如,V$SESSION可以显示当前会话的详细信息,而V$SQL则可以跟踪SQL语句的执行情况,...
通过深入学习和理解这些动态性能视图,数据库管理员和开发人员能够实时监控Oracle数据库的运行状态,及时发现性能问题,从而提高系统的整体性能和稳定性。在实际操作中,结合Oracle的其他工具,如SQL*Plus、企业管理...
Oracle数据库的动态性能表是DBA进行系统监控和性能调优的重要工具,其中`v$sysstat`是尤为关键的一个视图。这个视图记录了自数据库实例启动以来的全局实例级统计信息,涵盖了从事件发生次数、资源使用总量到执行时间...