30.Oracle杂记——Oracle常用动态视图v$session
30.Oracle杂记——Oracle常用动态视图v$session 视图v$session:有关会话的信息 这个视图包含了超级多的列,说明其包含巨大的信息,小伙伴千万要记得使用,不然浪费掉了ORACLE一片苦心啊。 描述如下: sys@PDB1> desc v$session Name Null? Type ------------------------------------------------------------- ------------------------------------ SADDR RAW(8) SID NUMBER SERIAL# NUMBER AUDSID NUMBER PADDR RAW(8) USER# NUMBER USERNAME VARCHAR2(30) COMMAND NUMBER OWNERID NUMBER TADDR VARCHAR2(16) LOCKWAIT VARCHAR2(16) STATUS VARCHAR2(8) SERVER VARCHAR2(9) SCHEMA# NUMBER SCHEMANAME VARCHAR2(30) OSUSER VARCHAR2(30) PROCESS VARCHAR2(24) MACHINE VARCHAR2(64) PORT NUMBER TERMINAL VARCHAR2(30) PROGRAM VARCHAR2(48) TYPE VARCHAR2(10) SQL_ADDRESS RAW(8) SQL_HASH_VALUE NUMBER SQL_ID VARCHAR2(13) SQL_CHILD_NUMBER NUMBER SQL_EXEC_START DATE SQL_EXEC_ID NUMBER PREV_SQL_ADDR RAW(8) PREV_HASH_VALUE NUMBER PREV_SQL_ID VARCHAR2(13) PREV_CHILD_NUMBER NUMBER PREV_EXEC_START DATE PREV_EXEC_ID NUMBER PLSQL_ENTRY_OBJECT_ID NUMBER PLSQL_ENTRY_SUBPROGRAM_ID NUMBER PLSQL_OBJECT_ID NUMBER PLSQL_SUBPROGRAM_ID NUMBER MODULE VARCHAR2(64) MODULE_HASH NUMBER ACTION VARCHAR2(64) ACTION_HASH NUMBER CLIENT_INFO VARCHAR2(64) FIXED_TABLE_SEQUENCE NUMBER ROW_WAIT_OBJ# NUMBER ROW_WAIT_FILE# NUMBER ROW_WAIT_BLOCK# NUMBER ROW_WAIT_ROW# NUMBER TOP_LEVEL_CALL# NUMBER LOGON_TIME DATE LAST_CALL_ET NUMBER PDML_ENABLED VARCHAR2(3) FAILOVER_TYPE VARCHAR2(13) FAILOVER_METHOD VARCHAR2(10) FAILED_OVER VARCHAR2(3) RESOURCE_CONSUMER_GROUP VARCHAR2(32) PDML_STATUS VARCHAR2(8) PDDL_STATUS VARCHAR2(8) PQ_STATUS VARCHAR2(8) CURRENT_QUEUE_DURATION NUMBER CLIENT_IDENTIFIER VARCHAR2(64) BLOCKING_SESSION_STATUS VARCHAR2(11) BLOCKING_INSTANCE NUMBER BLOCKING_SESSION NUMBER FINAL_BLOCKING_SESSION_STATUS VARCHAR2(11) FINAL_BLOCKING_INSTANCE NUMBER FINAL_BLOCKING_SESSION NUMBER SEQ# NUMBER EVENT# NUMBER EVENT VARCHAR2(64) P1TEXT VARCHAR2(64) P1 NUMBER P1RAW RAW(8) P2TEXT VARCHAR2(64) P2 NUMBER P2RAW RAW(8) P3TEXT VARCHAR2(64) P3 NUMBER P3RAW RAW(8) WAIT_CLASS_ID NUMBER WAIT_CLASS# NUMBER WAIT_CLASS VARCHAR2(64) WAIT_TIME NUMBER SECONDS_IN_WAIT NUMBER STATE VARCHAR2(19) WAIT_TIME_MICRO NUMBER TIME_REMAINING_MICRO NUMBER TIME_SINCE_LAST_WAIT_MICRO NUMBER SERVICE_NAME VARCHAR2(64) SQL_TRACE VARCHAR2(8) SQL_TRACE_WAITS VARCHAR2(5) SQL_TRACE_BINDS VARCHAR2(5) SQL_TRACE_PLAN_STATS VARCHAR2(10) SESSION_EDITION_ID NUMBER CREATOR_ADDR RAW(8) CREATOR_SERIAL# NUMBER ECID VARCHAR2(64) SQL_TRANSLATION_PROFILE_ID NUMBER PGA_TUNABLE_MEM NUMBER CON_ID NUMBER EXTERNAL_NAME VARCHAR2(1024) 然后来看看各个列描述的含义: SADDR:会话地址 SID :会话ID SERIAL# :会话串口号。用于唯一确定会话对象。因为SID可能在关闭后被下一个会话使用 AUDSID :审计会话ID PADDR:拥有会话的进程地址 USER#:Oracle用户ID USERNAME:Oracle 用户名字 COMMAND:进程的命令(最后分析的语句) OWNERID:拥有迁移会话的用户,当为2147483644时候,列无效。 TADDR:交易对象的地址 LOCKWAIT:会话等待的锁地址,NULL表示不等锁 STATUS :会话状态(ACTIVE,KILLED,CACHED,SNIPED) SERVER :服务类型(DEDICATED,SHARED,PSEUD0,POOLED,NONE) SCHEMA#:Schema user 的ID SCHEMANAME:Schema用户名字 OSUSER :操作系统客户 用户名字 PROCESS:曹邹系统客户进程ID MACHINE:操作系统机器名字 PORT:客户端端口号 TERMINAL:操作系统终名字 PROGRAM:操作系统程序名字 TYPE:会话类型 SQL_ADDRESS:使用SQL_HASH_VALUE来定位当前正在执行的SQL语句 SQL_HASH_VALUE:使用SQL_address来定位当前正在执行的SQL语句 SQL_ID :当前正在执行的SQL 语句ID SQL_CHILD_NUMBER:当前正在执行的SQL语句的子 数量 SQL_EXEC_START:当前会话执行SQL语句的时间 SQL_EXEC_ID :SQL执行的ID,如果为SQL_ID为NULL则为NULL 或者SQL还没开始执行 PREV_SQL_ADDR:上一个SQL语句执行的语句 PREV_HASH_VALUE:上一个语句执行的SQL HASH值 PREV_SQL_ID:上一个语句执行的 SQL ID PREV_CHILD_NUMBER :上一个SQL语句执行的子数量 PREV_EXEC_START:上一个SQL语句执行的时间 PREV_EXEC_ID:上一个SQL语句执行的 执行ID 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名字 MODULE_HASH:modlue列的哈希值 ACTION:通过调用DBMS_APPLICATION_INFO.SET_ACTION过程来设置的执行动作 ACTION_HASH:ACTION列的哈希值 CLIENT_INFO :通过DBMS_APPLICATION_INFO.SET_CLIENT_INFO过程设置的信息 FIXED_TABLE_SEQUENCE:会话 每次完成一个数据库调用都会增长,会被动态性能表查询干涉 ROW_WAIT_OBJ# :包含ROW_WAIT_ROW#的表对象ID ROW_WAIT_FILE# :包含ROW_WAIT_ROW#的文件ID ROW_WAIT_BLOCK#:包含ROW_WAIT_ROW#的块ID ROW_WAIT_ROW#:当前锁住的行 TOP_LEVEL_CALL# :顶级调用号 LOGON_TIME:登陆时间 LAST_CALL_ET:如果状态为ACTIVE,表示活动的流逝时间 PDML_ENABLED:已经被PDML_STATUS列代替 FAILOVER_TYPE:透明应用FAILOVER(TAF)是否开启以及开启方式 FAILOVER_METHOD:会话的TAF方法 FAILED_OVER:是否允许在FAILOVER模式,以及是否触动 RESOURCE_CONSUMER_GROUP :会话当前资源消耗组 PDML_STATUS:如果ENABLED,会话使用PARALLEL DML PDDL_STATUS:如果DENABLED,会话使用PARALLELDDL PQ_STATUS:如果ENABLED,会话使用PRAALLELQUERY 模式 CURRENT_QUEUE_DURATION :如果queued(1),当前会话排队总的时间 CLIENT_IDENTIFIER:会话的客户端ID BLOCKING_SESSION_STATUS:这个列提供了消息的关于阻塞会话 BLOCKING_INSTANCE:阻塞会话的实例ID BLOCKING_SESSION:阻塞会话的会话ID FINAL_BLOCKING_SESSION_STATUS:finalblocking session是等待chain中最后通过被阻塞会话构建的 FINAL_BLOCKING_INSTANCE:最终阻塞会话的实例ID FINAL_BLOCKING_SESSION:最终阻塞会话的会话ID SEQ#:唯一确定当前或最后等待 EVENT#:事件号 EVENT:会话等待的资源或事件 P1TEXT :第一个等待事件参数的描述 P1:第一个等待时间参数(10进制) P1RAW:第一个等待时间参数(16进制 P2TEXT:第2个等待事件参数的描述 P2 :第2个等待时间参数(10进制) P2RAW:第2个等待时间参数(16进制 P3TEXT:第3个等待事件参数的描述 P3:第3个等待时间参数(10进制) P3RAW:第3个等待时间参数(16进制 WAIT_CLASS_ID:等待时间的类ID WAIT_CLASS#:等待事件的类号 WAIT_CLASS:等待时间的类名字 WAIT_TIME:如果会话当前正在等待,则值为0,如果>0,上一次等待时间持续时间,-1上一次等待少于百分之一秒;-2表示TIMED_STATISTICS设置为FALSE SECONDS_IN_WAIT:如果会话当前正在等待,当前等待的总值 STATE:等待状态 WAIT_TIME_MICRO:等待时间的总计(毫秒) TIME_REMAINING_MICRO:可以 >0,-1,NULL。 >0 当前等待总计,0当前等待超时,-1 无线等待,NULL会话没在等待 TIME_SINCE_LAST_WAIT_MICRO :上一次等待结束流逝的时间,如果会话当前正在等待,该值为0 SERVICE_NAME:会话服务名字 SQL_TRACE:SQL 跟踪是否开开启 SQL_TRACE_WAITS:等待tracing 是否使能 SQL_TRACE_BINDS:绑定tracing 是否使能 SQL_TRACE_PLAN_STATS:每个游标DUMP到trace 文件的行资源 统计信息 SESSION_EDITION_ID:通过sys_context('USERENV','SESSION_EDITION_ID')报告的值 CREATOR_ADDR:创建进程的地址 CREATOR_SERIAL# :创建进程的串口号 ECID:执行的文本ID(通过APP SERVER发送) SQL_TRANSLATION_PROFILE_ID :SQL 转换profile 的对象号。 PGA_TUNABLE_MEM :可调整PGA内存的总量(不可调的内存是PGA_ALLOC_MEM 建议PGA_TUNABLE_MEM) CON_ID :容器ID EXTERNAL_NAME :数据库用户的外部名字 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |