Oracle session表和process表字段描述.doc_第1页
Oracle session表和process表字段描述.doc_第2页
Oracle session表和process表字段描述.doc_第3页
Oracle session表和process表字段描述.doc_第4页
Oracle session表和process表字段描述.doc_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Oracle session表和process表字段描述Oracle 动态性能表 v$session & v$process1、v$session SADDR: session address SID: session identifier,常用于连接其它列。SERIAL#: sid 会重用,但是同一个sid被重用时,serial#会增加,不会重复。AUDSID: audit session id。可以通过audsid查询当前session的sid。select sid from v$session where audsid=userenv(sessionid);PADDR: process address,关联v$process的addr字段,可以通过这个字段查处当前session对应操作系统的那个进程的id。USER#: sessions user id。等于dba_users中的user_id。Oracle内部进程的user#为0。USERNAME: sessions username。等于dba_users中的username。Oracle内部进程的username为空。COMMAND: session正在执行的SQL Id。1代表create table,3代表select。TADDR: 当前的transaction address。可以用来关联v$transaction的addr字段。LOCKWAIT: 可以通过这个字段查询出当前正在等待的锁的相关信息。sid & lockwait与v$lock中的sid & kaddr相对应。STATUS: 用来判断session状态。Active:正执行SQL语句。Inactive:等待操作。Killed:被标注为删除。SERVER: server type (dedicated or shared)SCHEMA#: schema user id。Oracle内部进程的schema#为0。 SCHEMANAME: schema username。Oracle内部进程的schemaname为sys。OSUSER: 客户端操作系统用户名。PROCESS: 客户端process id。MACHINE: 客户端machine name。TERMINAL: 客户端执行的terminal name。PROGRAM: 客户端应用程序。比如ORACLE.EXE (PMON)或者sqlplus.exeTYPE: session type (background or user)SQL_ADDRESS, SQL_HASH_VALUE, SQL_ID, SQL_CHILD_NUMBER: session正在执行的sql statement,和v$sql中的address, hash_value, sql_id, child_number相对应。PREV_SQL_ADDR, PREV_HASH_VALUE, PREV_SQL_ID, PREV_CHILD_NUMBER: 上一次执行的sql statement。MODULE, MODULE_HASH, ACTION, ACTION_HASH, CLIENT_INFO: 应用通过DBMS_APPLICATION_INFO设置的一些信息。FIXED_TABLE_SEQUENCE: 当session完成一个user call后就会增加的一个数值,也就是说,如果session inactive,它就不会增加。因此可以根据此字段的值变化来监控某个时间点以来的session的性能情况。例如,一个小时以前,某个session 的FIXED_TABLE_SEQUENCE是10000,而现在是20000,则表明一个小时内其user call比较频繁,可以重点关注此session的performance statistics。ROW_WAIT_OBJ#: 被锁定行所在table的object_id。和dba_objects中的object_id关联可以得到被锁定的table name。ROW_WAIT_FILE#: 被锁定行所在的datafile id。和v$datafile中的file#关联可以得到datafile name。ROW_WAIT_BLOCK#: Identifier for the block containing the row specified in ROW_WAIT_ROW#ROW_WAIT_ROW#: session当前正在等待的被锁定的行。LOGON_TIME: session logon time2、v$processADDR: process address。可以和v$session的paddr字段关联。PID: Oracle进程identifier。SPID: 操作系统进程identifier。USERNAME: 操作系统进程的用户名。并非Oracle用户名。SERIAL#: process serial number。TERMINAL: 操作系统terminal identifier(e.g., computer name)。PROGRAM: 进程正在执行的程序(e.g., ORACLE.EXE (ARC0),和v$session中的program类似。BACKGROUND: 1代表oracle background process,null代表normal process。查看当前用户的sid和serial#:select sid, serial#, status from v$session where audsid=userenv(sessionid);查看当前用户的spid:select spid from v$process p, v$session s where s.audsid=userenv(sessionid) and s.paddr=p.addr;select spid from v$process p join v$session s on p.addr=s.paddr and s.audsid=userenv(sessionid);查看当前用户的trace file路径:select p.value | | t.instance | _ora_ | ltrim(to_char(p.spid,fm99999) | .trc from v$process p, v$session s, v$parameter p, v$thread t where p.addr = s.paddr and s.audsid = userenv(sessionid) and = user_dump_dest; 已知spid,查看当前正在执行或最近一次执行的语句:select /*+ ordered */ sql_text from v$sqltext sql where (sql.hash_value, sql.address) in ( select decode(sql_hash_value, 0, prev_hash_value, sql_hash_value), decode(sql_hash_value, 0, prev_sql_addr, sql_address) from v$session s where s.paddr = (select addr from v$process p where p.spid = to_number(&pid) order by piece asc;查看锁和等待:col user_name format a10col owner format a10col object_name format a15col sid format 999999col serial# format 999999col spid format a6select /*+ rule */ lpad( , decode(l.xidusn, 0, 3, 0) | l.oracle_username user_name, o.owner, o.object_name, o.object_type, s.sid, s.serial#, p.spid from v$locked_object l, dba_objects o, v$session s, v$process p where l.object_id = o.object_id and l.session_id = s.sid and s.paddr = p.addr order by o.object_id, xidusn desc;从 v$session 视图获取客户端 IP 地址 缺省从 v$session 中不能直接获得客户端 IP,可以在数据库中创建一个追踪客户端IP地址的触发器: create or replace trigger on_logon_trigger after logon on database begin dbms_application_info.set_client_info(sys_context(userenv, ip_address); end; / 现在就可以在 V$SESSION 视图的 CLIENT_INFO 列中看到新登录的客户端IP地址了。 col sid for 9999 col serial# for 999999 col usern

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论