`
小嘴看世界
  • 浏览: 131495 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

oracle中断session

    博客分类:
  • DB
阅读更多
一个用户进程偶尔会挂起或占用过多资源而拒绝其它会话。如果 DBA 依然能够访问数据库,通常可以发出以下查询
SELECT S.USERNAME,S.OSUSER,S.SID,S.SERIAL#,P.SPID FROM V$SESSION S,V$PROCESS P WHERE
S.PADDR=P.ADDR AND S.USERNAME IS NOT NULL;

通过 ALTER SYSTEM KILL SESSION 'SID,SERIAL#' 命令来杀SESSION

要杀掉已锁的SESSION,WINDOWS下可以通过下载诸如QUICK SLICE等命令行工具,在命令行中直接执行ORAKILL <SID><SPID>即可。不利用这些工具,则要为ORAKILL命令提供更多的的参数,诸如相应的WINDOWS线程等。

在网上也搜索到了一些相关的信息

===================================================================================================
处理方法一 :

1.SELECT saddr,sid,serial#,paddr,username,status FROM v$session WHERE username IS NOT NULL
example:saddr,sid,serial#,paddr,username,status FROM v$session WHERE username = 'XNJW0419' ;
SADDR SID SERIAL# PADDR USERNAME STATUS
-------- ---------- ---------- -------- ------------------------------ --------
542E0E6C 11 314 542B70E8 EYGLE INACTIVE 542E5044 18 662 542B6D38 SYS ACTIVE

2.ALTER SYSTEM KILL SESSION 'sid, serial#';
example:ALTER SYSTEM KILL SESSION '11,314';(注:在sqlplus中执行 )

结果: 提示标记要删去的会话 无法释放会话,未成功解锁

====================================================================================================
处理方法二 :

a、 找到你要杀掉的那个SESSION, 并记下paddr

SELECT sid, username, paddr, status FROM v$session WHERE username = '用户名' ;
example:SELECT sid, username, paddr, status FROM v$session WHERE username = 'XNJW0419' ;
       SID USERNAME                       PADDR    STATUS
---------- ------------------------------ -------- --------
        10 XNJW0419                       2B5E2E2C KILLED

b、 找到这个SESSION所对应的spid

SELECT * FROM v$process WHERE addr = '上面查寻的paddr';
example:SELECT ADDR,PID,SPID,USERNAME,SERIAL#,TERMINAL FROM v$process WHERE addr = '2B5E2E2C';
ADDR            PID SPID         USERNAME           SERIAL# TERMINAL
-------- ---------- ------------ --------------- ---------- ----------------
2B5E2E2C         44 1204         SYSTEM                 -99 JWC

c、 杀掉spid所标识的那个进程

D:\>orakill sid  spid (注:cmd命令窗口中执行 只有oracle服务器端才有orakill命令)
example: D:\>orakill oemrep 1204

提示:KILL OF THREAD id 1204 IN INSTANCE oemrep successfully signalled.

结果:成功删除该SESSION,表也解锁
分享到:
评论

相关推荐

    oracle中session和processes的设置

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

    重启oracle服务,删除session

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

    Oracle Session Monitor v1.0

    Oracle Session Monitor的使用对于数据库管理员来说具有重要意义,它可以帮助他们更有效地管理数据库会话,避免因不合理的会话占用资源而导致的服务中断。通过定期清理不必要的会话,可以提升整体系统的响应速度,...

    如何安全快速的批量删除Oracle数据库外部会话session

    总结来说,安全快速地批量删除Oracle数据库外部会话涉及到对`ALTER SYSTEM KILL SESSION`、`ALTER SYSTEM DISCONNECT SESSION`命令的熟练运用,以及可能的与操作系统交互。在执行这些操作时,务必小心谨慎,避免对...

    oracle ORA-00031:session marked for kill(标记要终止的会话)解决方法

    这通常发生在使用ALTER SYSTEM KILL SESSION命令企图终止某个会话时,但由于会话正在执行无法中断的操作(如回滚或网络操作阻塞)而不能立即被终止,但系统已经标记了这个会话为待杀状态,意味着一旦会话完成当前的...

    ORACLE 如何查询被锁定表及如何解锁释放session

    ### ORACLE 如何查询被锁定表及如何解锁释放session 在Oracle数据库管理中,了解如何查询被锁定的表以及如何解锁这些锁定对于确保数据库高效运行至关重要。本文将详细介绍如何使用Oracle SQL查询锁定的表,并提供一...

    Oracle 11g 官方中文文档集萃

    Oracle 11g提供了一系列工具和策略来优化数据库性能,如SQL Tuning Advisor、Automatic Workload Repository (AWR)和ASH(Active Session History)。通过分析SQL语句执行计划和系统资源消耗,DBA可以识别瓶颈并采取...

    oracle 文档 oracle 文档 oc4j esb

    - **高可用性(HA)**: 是指系统能够持续提供服务的能力,即使在某些组件发生故障的情况下也能保证服务不中断。 - **Oracle Application Server**: 是一款由Oracle公司开发的企业级应用服务器,用于支持Java EE应用...

    weblogic session丢失

    4. **网络问题**:网络延迟或中断可能导致session数据无法在服务器之间正确传播。 5. **代码问题**:检查应用代码,确保正确地创建、使用和销毁session。错误的编程实践可能导致session丢失。 6. **日志分析**:...

    Oracle杀锁的语句

    但有时,长时间运行的事务或错误配置的应用程序可能会导致锁定情况无法自动解除,这会严重影响系统的性能甚至导致关键业务流程中断。因此,了解如何有效地查看锁定状态、解锁被锁定的对象或会话成为DBA及开发人员...

    Oracle 11g RAC 基本概念

    **高可用性**:RAC 的 shared-everything 架构确保即使某个节点出现故障也不会导致整个系统服务中断,因为集群中的其他节点可以迅速接管服务。 **可扩展性**:通过增加节点,RAC 可以轻松地提高系统的处理能力,这...

    Oracle 故障诊断的资料

    Oracle 故障诊断是数据库管理员和IT专业人员必备的技能之一,它涉及到对数据库系统运行异常、性能下降或服务中断等问题的识别、分析和解决。本资料主要关注Oracle数据库的故障诊断,帮助提升你的综合处理能力。以下...

    oracle系统自带角色说明

    在Oracle Database 10g之前的版本中,Connect角色还包含了更多权限,如`ALTER SESSION`、`CREATE CLUSTER`、`CREATE DATABASE LINK`、`CREATE SEQUENCE`、`CREATE SESSION`、`CREATE SYNONYM`、`CREATE TABLE`和`...

    oracle临时表(事务级、会话级).docx

    这种类型的临时表可以使用 ON COMMIT PRESERVE ROWS 说明,表示临时表是会话指定,当中断会话时(commit or rollback),Oracle 自动清除临时表中数据。 临时表的特点 1. 临时表的数据只对当前 Session 有效,每个...

    oracle 主从同步

    - 可以通过`ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION`命令来切换模式。 #### 1.5 主库和备库的Switchover配置 Switchover是指在两个数据库之间切换主角色的过程,用于计划内的...

    Oracle数据库日常维护

    - **释放死锁资源**:确定需要释放的会话后,可以使用`ALTER SYSTEM KILL SESSION`语句结束死锁会话。在OEM中,也可以通过界面中断会话以释放资源。 4. **SPFILE与PFILE的应用** - **SPFILE简介**:自Oracle 9i起...

    Oracle 10g数据库管理艺术

    除此之外,10g的Performance Manager提供了全面的性能监控和诊断工具,如AWR (Automatic Workload Repository)和ASH (Active Session History),这些工具可以帮助管理员识别性能瓶颈,进行问题定位和调优。...

    spotlight on oracle性能监控教程

    此外,Most Recent SQL可以用来确定当前占用资源最大的SQL语句,而Session Waits则可以帮助找出与该会话相关的等待情况。这些功能对于诊断和解决性能问题是极其有用的。 总之,Spotlight on Oracle不仅是一款强大的...

Global site tag (gtag.js) - Google Analytics