有时候,oracle终止当前的session是必要的。例如,你想执行一个管理操作,需要终止所有非管理员的session。下面描述的是终止sess

有时候,Oracle终止当前的session是必要的。例如,你想执行一个管理操作,需要终止所有非管理员的session。下面描述的是终止session的各个方面,包括以下:

1.标识哪些session需要终止

2.终止一个Active Session

3.终止一个Inactive Session

当一个session被终止,session的任何活动事务回滚,并且立即释放所有的资源,比如locks and memoryareas。

使用ALTERSYSTEM KILL SESSION终止一个会话。下面的例句sid 7,serial# 15:

ALTER SYSTEMKILL SESSION '7,15';

1. 标识哪些session需要终止

为了标识需要终止的session,需要知道session的sid和serial#,可以查询v$session得到。例如,下面的查询标识了用户wxlun的所有session:

SQL> SELECT SID, SERIAL#, STATUS FROM V$SESSION WHERE USERNAME ='WXLUN';

SID SERIAL#STATUS

---------- ---------- --------

81 19713 ACTIVE

95 27537 INACTIVE

当一个session正在调用数据库,session状态为ACTIVE,当一个session非正在调用数据库,session状态为INACTIVE。

2. 终止一个Active Session

如果一个用户session正在处理事务(ACTIVE),终止这个会话,则事务回滚,用户立即收到下面的信息:

ORA-00028: your session has been killed

如果,接到ORA-00028错误后,再重新连接数据库前继续执行语句,,oracle会返还下面的信息:

ORA-01012: not loggedon(使用不同的工具连接到数据库可能收到的信息不同,但是类似,都是指和库的session断了)

当一个session正在执行网络I/O或者事务回滚时,是不能终止的。这类session只能等操作完成才可以终止。这种情况下,直到session终止,资源才会释放。另外,发出ALTERSYSTEM去终止session的会话,等待60秒后没有终止session,会收到一个信息表明session已标识为终止。被标记为终止的session在v$seession的status为KILLED,某些终止服务status可能为PSEUDO。

3. 终止一个Inactive Session

如果终止一个InactiveSession,并不会立即收到ORA-00028错误。直到用户接着使用被终止的session才会收到ORA-00028错误。

当一个inactivesession,session的status变成KILLED,当用户再次使用这个session和收到ORA-00028错误,这个终止的session会从v$session删除。

下面是一个终止inactive session的例子。

SQL> SELECT SID, SERIAL#, STATUS FROM V$SESSION WHERE USERNAME ='WXLUN';

SID SERIAL#STATUS

---------- ---------- --------

95 27591 INACTIVE

SQL> alter system kill session '95,27591';

System altered.

SQL> SELECT SID, SERIAL#, STATUS FROM V$SESSION WHERE USERNAME ='WXLUN';

SID SERIAL#STATUS

---------- ---------- --------

95 27591 KILLED

SQL>

相关阅读:

Oracle 10 DBMS_MONITOR跟踪和分析其它session SQL

快速找到跟踪其他session产生的trc文件

Oracle 彻底 kill session

MySQL主从故障处理--session 级别参数复制错误

如何查看Oracle数据库的session阻塞

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

本文系统来源:php中文网

oracle强制关闭session,Oracle终止session相关推荐

  1. oracle 强制 断开,ORA-01092: ORACLE 例程终止 强行断开连接

    今天测试部门的人叫我过去,说是数据库当了,起不来了. 我过去看了看情况,做了如下操作 SQL> shutdown immediate 数据库已经关闭. 已经卸载数据库. Oracle 例程已经关 ...

  2. oracle不一致性关闭下次,Oracle DataGuard

    ```1.文档介绍 本实施方案主要对Oracle DataGuard实施部署作相应的说明.以便实施人员能根据当前业务特点,规划.建设符合高可用.高可靠的数据库集群系统.具体由Oracle DG环境拓扑 ...

  3. oracle强制执行计划,Oracle里另外一些典型的执行计划

    在之前的文章里写了Oracle里常见的执行计划,可以参考文章:http://hbxztc.blog.51cto.com/1587495/1901416,这篇文章里介绍的是其他的一些典型的执行计划. 1 ...

  4. oracle数据库关闭失败,Oracle数据库关闭时出现ORA-03113错误

    Oracle数据库关闭时,出现ORA-03113错误: SQLgt; shutdown immediateORA-03113: end-of-file on communication channel ...

  5. oracle 强制 断开,ORA-01092: ORACLE 例程终止。强行断开连接

    dataguard服务器不能open,需要重启主服务器才能解决. 如下: SQL> conn as sysdba; 已连接到空闲例程. SQL> startup nomount; ORAC ...

  6. oracle 强制 断开,ORA-01092 ORACLE 实例终止。强制断开连接 解决方案(下)

    原因: Oracle数据库升级后,数据字典没有升级,或者数据字典升级失败 解决: oracle dba用户执行catupgrd.sql.cataproc.sql和catlog.sql 1.以start ...

  7. oracle强制关闭用户连接

    我在删除用户的时候,提示我无法删除当前已连接的用户,特此Google一下,整理了几种方法,来杀掉用户连接: 第一种方法: 1.通过管理员登录 2.使用视图:v$session 查询当前连接的用户 se ...

  8. oracle怎么关闭约束,Oracle约束enable/disablenovalidate

    oracle 对constraint的开启和关闭共有四种:enable validate;enable novalidate;disable validate;disable novalidate.启 ...

  9. oracle立即关闭数据库,Oracle数据库的起步和关闭

    Oracle数据库的启动和关闭 要启动和关闭数据库,必须要以具有Oracle 管理员权限的用户登陆,通常也就是以具有SYSDBA权限的用户登陆,启动一个数据库需要三个步骤: 1. 创建一个Oracle ...

最新文章

  1. 三数之和(三数不重复)
  2. 在SIMULINK实现各类优化类算法的仿真——粒子群算法、细菌觅食、
  3. python正态检验_Python怎么检验数据的正态分布
  4. 关闭系统进程,以及如何调用cmd并执行命令
  5. 计算机地址码特点,电脑摇头灯的地址码的设定问题你必须要注意的
  6. centos 6.5 x64安装php 7
  7. Wireshark 常用过滤
  8. 【线性代数】思维脑图
  9. DM7数据库安装图文教程
  10. hive 漫威the_2021年即将上映的漫威电影
  11. SQL连接MYSQL出现对象名无效_SQL数据库时提示对象名'XXX' 无效
  12. 关于原生ajax的那些事
  13. Android电量统计
  14. TensorFlow 使用 slim 模块搭建复杂网络
  15. 两个hc05蓝牙模块在两块单片机上通信(附完整代码)
  16. 如何把JAR发布到maven中央仓库
  17. 第三周总结(2018-03-12~2018-03-16)
  18. 这年头,能坐上火箭的东西不多啊,Java版本号算一个
  19. python 不知什么原因的坑1
  20. Chrome浏览器如何设置代理?如何快速切换代理?

热门文章

  1. 2023年2月573名学员通过国家信息安全水平考试其中CISP218名,NISP二级355名
  2. 提高工作效率的8个小方法
  3. 电子签名?玩具罢了!(web前端)
  4. elasticsearch多字段聚合实现方式
  5. Android 一一 简述Android四大组件
  6. openGauss内核荣获中国首个国际CC EAL4+级别认证
  7. 关于uniapp多图片上传和单图片上传
  8. 你可能不知道的MySQL中的定点数类型
  9. 今天小暑是什么时间_小暑是几月几日星期几2020 是什么季节
  10. python实现AC自动机