`
JoeJJ
  • 浏览: 31702 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论

oracle查询一些session相关的信息

阅读更多

1 获取当前session的sid

 

       select sid, serial# from v$mystat where rownum=1


2  获取sid和spid

  (1)根据sid获取spid

         select spid from v$process p, v$session s where s.sid=&sid and s.paddr=p.addr;

 

 

   (2) 获取当前session的sid和spid

          select sid, spid from v$process p, v$session s  where s.paddr=p.addr and s.sid=(select sid from v$mystat where rownum=1);

 

3 获取当前session的trace文件路径

 

select p.value || '/' || t.instance || '_ora_' || ltrim(to_char(p.spid,'fm99999')) || '.trc'  trace_path
 from v$process p, v$session s, v$parameter p, v$thread t
 where p.addr = s.paddr and s.sid=(select sid from v$mystat where rownum=1) and p.name = 'user_dump_dest';

 

或者

select d.value || '/' || lower(rtrim(i.instance, chr(0))) || '_ora_' ||
       p.spid || '.trc' trace_file_name
  from (select p.spid
          from sys.v$mystat m, sys.v$session s, sys.v$process p
         where m.statistic# = 1
           and s.sid = m.sid
           and p.addr = s.paddr) p,
       (select t.instance
          from sys.v$thread t, sys.v$parameter v
         where v.name = 'thread'
           and (v.value = 0 or t.thread# = to_number(v.value))) i,
       (select value from sys.v$parameter where name = 'user_dump_dest') d;

 

4 根据sid查看当前正在执行或最近一次执行的语句

 

  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.sid=&sid)
  order by piece asc;

 

 

分享到:
评论

相关推荐

    oracle查看session状态

    自己整理的关于oracle session的状态查看,对新手有一定的帮助,希望您喜欢。

    oracle中已killed session的处理

    在Oracle数据库管理中,有时会遇到一些异常情况,比如某个Session长时间未响应或占用大量资源,这时可能需要管理员手动干预,通过`ALTER SYSTEM KILL SESSION 'SID,SERIAL#'`命令来强制终止这个Session。然而,在...

    oraclev$sessionv$session_wait用途详解

    在Oracle数据库管理与优化的过程中,`v$session`与`v$session_wait`视图扮演着至关重要的角色,它们提供了关于当前活动会话及其等待事件的详细信息,这对于诊断性能问题、理解数据库行为以及进行有效的资源管理至关...

    快速杀死oracle的session

    1. **查询Session信息:** 使用以下SQL查询来找出特定用户名下的所有非活跃(INACTIVE)Session: ```sql SELECT sid, username, paddr, status FROM v$session WHERE username = '目标用户名' AND status = '...

    oracle Session与lock 解除

    接下来,我们将深入探讨Oracle数据库中锁的相关知识点。 #### 锁的类型及其作用 Oracle中的锁主要有以下几种模式: - **0:None** —— 没有任何锁。 - **1:Null** —— 空锁,表示没有任何锁的状态。 - **2:...

    Oracle 数据库解锁session方式

    Oracle 数据库解锁session方式

    oracle_v$session_v$session_wait用途详解

    - **行等待信息查询** - 通过 `ROW_WAIT_OBJ#`, `ROW_WAIT_FILE#`, `ROW_WAIT_BLOCK#`, `ROW_WAIT_ROW#` 可以查询到关于行级别的锁定信息: - 获取锁定的对象信息: ```sql SELECT * FROM dba_objects WHERE ...

    重启oracle服务,删除session

    ### 重启Oracle服务与删除Session的操作指南 #### 一、背景介绍 在Oracle数据库管理过程中,有时需要重启Oracle服务或清除所有的会话(session),以解决某些特定问题或进行必要的维护工作。本文将详细介绍如何通过...

    oracle中session和processes的设置

    ### Oracle中Session与Processes参数的设置详解 #### 一、引言 在Oracle数据库管理过程中,合理设置系统参数对于确保数据库稳定运行至关重要。其中,“session”与“processes”两个参数直接影响到数据库能够同时...

    oracle kill session

    ### Oracle Kill Session:详解与实践 在Oracle数据库管理与维护过程中,“Oracle Kill Session”是一项非常重要的操作技巧。本文将从理论到实践多个层面深入探讨如何有效地执行“Oracle Kill Session”,帮助...

    有效关闭Oracle死锁进程,和释放状态为killed的session

    在Oracle数据库管理中,处理死锁进程和释放状态为killed的session是一项关键技能,尤其对于维护数据库性能和稳定性至关重要。以下将详细阐述如何通过一系列步骤有效地关闭Oracle死锁进程,以及如何释放状态为killed...

    清除Oracle中长时间持锁的session

    可以通过查询`V$DB_OBJECT_CACHE`视图来获取相关信息。该视图显示了当前被缓存在库缓存中的数据库对象,包括表、索引、簇、同义词定义、PL/SQL过程和包以及触发器等。 **查询语句示例**: ```sql SELECT * FROM V$...

    Oracle疑难:session无法完全删除问题

    Oracle疑难:session无法完全删除问题

    oracle session 连接关系图

    非常好的oracle session 连接关系图

    修改oracle process session 初始化参数

    本文将从查询、设定以及二者之间的关系等方面详细介绍如何修改Oracle的`process`与`session`初始化参数。 #### 一、查询Process与Session 首先,我们需要了解当前系统中的`process`和`session`的数量,这可以通过...

    Oracle_Kill_Session_终极篇

    1. **获取session的内存地址**:使用以下查询语句获取已标记为“KILLED”状态的session的详细信息,包括其地址(addr): ```sql SELECT * FROM (SELECT s.username, s.serial#, s.sid, s.status, x.addr, x....

    oracle 查看当前会话执行的sql语句

    以下将详细介绍如何通过不同的方法来查看当前会话所执行的SQL语句及相关信息。 #### 1. 获取当前会话的信息 首先,我们可以通过`v$session`视图来获取当前会话的基本信息,如SID、SERIAL#等。 ```sql -- 查询当前...

    Oracle查询用户锁表

    本文档将详细介绍如何查询用户锁表,并提供相关的代码。 一、查询用户锁表的必要性 在 Oracle 数据库中,锁表是指用户在进行数据操作时临时锁定的表,以防止其他用户同时对该表进行操作。但是,锁表也可能会导致...

    提高Oracle查询效率

    - **V$视图**:Oracle提供了一系列V$视图,用于实时监控数据库状态,如V$SESSION、V$SQL、V$SQLAREA等。 - **AWR报告**:自动工作负载 repository,提供了数据库性能的周期性快照,帮助分析性能变化。 - **ASH...

    如何快速的杀掉Oracle的Session

    对于批量结束所有Oracle用户的进程,Windows环境可以执行SQL查询生成批处理文件执行,而在Unix环境中,使用`ps`、`grep`和`awk`命令结合`kill`可一次性结束所有非Oracle守护进程。 需要注意的是,使用`alter system...

Global site tag (gtag.js) - Google Analytics