【Linux/Oracle】ORA-00031:标记要终止的会话 解决
在PL/SQL操作了一条delete语句用于删除这张1.4亿条数据的表,执行了12个小时还没删完
(经DB指导,量级大的需要使用truncate table table_name 进行删除)

--查询当前进程
SELECT l.session_id sid,
s.serial#,
l.locked_mode 锁模式,
l.oracle_username 登录用户,
l.os_user_name 登录机器用户名,
s.machine 机器名,
s.terminal 终端用户名,
o.object_name 被锁对象名,
s.logon_time 登录数据库时间
FROM v$locked_object l, all_objects o, v$session s
WHERE l.object_id = o.object_id
AND l.session_id = s.sid
ORDER BY sid, s.serial#;

查询发下 SID为962的对象被锁了
尝试使用 alter system kill session 'SID,SERTAL'; 杀掉会话进程
alter system kill session '962,23413';
提示了 ORA-00031: 标记要终止的会话
经查 :如果出现题目的错误,则说明在数据库级不能杀掉该死锁进程,需要到操作系统级来处理了。如下图所示:

[root@crb-db1 ~]# su - oracle --切换到oracle 用户
Last login: Thu Jun 10 10:59:03 CST 2021 on pts/0
[oracle@crb-db1 ~]$ ps -ef | grep smon --SMON(system monitor process)系统监控后台进程
--ps命令将某个进程显示出来
--grep命令是查找
--中间的|是管道命令 是指ps命令与grep同时执行
--grep命令是查找,是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。
--grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。
--select * from v$session where sid=962; 根据sid查addr
--select * from v$process where addr='0000000508DF6488' 查pid
UID :程序被该 UID 所拥有
PID :就是这个程序的 ID
PPID :则是其上级父程序的ID
C :CPU使用的资源百分比
STIME :系统启动时间
TTY :登入者的终端机位置
TIME :使用掉的CPU时间。
CMD :所下达的是什么指令
UID PID PPID C STIME TTY TIME CMD
oracle 1819 1779 0 12:59 pts/1 00:00:00 grep --color=auto smon
oracle 10125 1 0 2020 ? 00:15:06 ora_smon_orcl
[oracle@crb-db1 ~]$ ps -ef | grep 55754 --55754 即第②步根据SID查询出的spid
oracle 1821 1779 0 12:59 pts/1 00:00:00 grep --color=auto 55754
oracle 55754 1 1 Jun09 ? 00:16:26 oracleorcl (LOCAL=NO)
[oracle@crb-db1 ~]$ kill -9 55754
[oracle@crb-db1 ~]$
[oracle@crb-db1 ~]$ ^C
[oracle@crb-db1 ~]$ timed out waiting for input: auto-logout
[root@crb-db1 ~]# timed out waiting for input: auto-logout
Connection closing...Socket close. Connection closed by foreign host. 成功解决
【Linux/Oracle】ORA-00031:标记要终止的会话 解决的更多相关文章
- 【转】ora-00031:session marked for kill(标记要终止的会话)解决方法
今天碰到一个问题,有一张表不能操作,很可能是被锁了,首先想到的是kill session,于是执行了下列的脚本找到是哪个session有问题: select object_name, machine, ...
- 【ORACLE 】 ORA-00031 标记要删去的会话(解决)
在使用Oracle的过程中,会有使用了锁(for update)但又忘记释放锁的情况.这是就需要用到KILL语句了.(如果不知道KILL语句怎么用,可参考: http://www.cnblogs.co ...
- ORA-00031: session marked for kill 标记要终止的会话
原文转载处:http://moonsoft.itpub.net/post/15182/203828 一些ORACLE中的进程被杀掉后,状态被置为"killed",但是锁定的资源很长 ...
- Linux Oracle bash: “sqlplus / as sysdba”: command not found 解决方法
bash: sqlplus: command not found 解决方法 注:本文来源于 < bash: sqlplus: command not found 解决方法 > 1: ...
- Oracle ORA
ORA-00001: 违反唯一约束条件 (.) 错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常. ORA-00017: 请求会话以设置跟踪事件 ORA-00018: 超出最大会话数 OR ...
- Oracle Ora 错误解决方案合集
注:本文来源于 < Oracle学习笔记 --- Oracle ORA错误解决方案 > ORA-00001: 违反唯一约束条件 (.)错误说明:当在唯一索引所对应的列上键入重复值时,会触发 ...
- oracle错误:1067进程意外终止
oracle错误:1067进程意外终止我Oracle安装完了之后可以运行的 ,过了一段时间不可以了,就上网找了一下,原来是自己的ip已经改变.我一直使用IP地址的. 将D:\oracle\produc ...
- Linux oracle数据库自动备份自动压缩脚本代码
Linux oracle数据库备份完成后可以自动压缩脚本代码. 复制代码代码如下: #!/bin/bash #backup.sh #edit: www.jbxue.com ##系统名称 sysname ...
- Parse Fatal Error at line 41 column 24: 元素类型 "url-pattern" 必须由匹配的结束标记 "</url-pattern>" 终止
1.错误描述 严重: Parse Fatal Error at line 41 column 24: 元素类型 "url-pattern" 必须由匹配的结束标记 "< ...
随机推荐
- Win10如何更改C:\Users\下的用户名
详细操作步骤博文原址 : https://blog.csdn.net/wls666/article/details/103334152 但是,改完后会出现报错 这是微软应用商城出现问题 ,每次开机 ...
- 新增访客数量MR统计之NewInstallUserMapper相关准备
关注公众号:分享电脑学习回复"百度云盘" 可以免费获取所有学习文档的代码(不定期更新)云盘目录说明:tools目录是安装包res 目录是每一个课件对应的代码和资源等doc 目录是一 ...
- 通过了解Servlet和Http之间的关系,了解web中http通信使用(二)
注:图片如果损坏,点击文章链接:https://www.toutiao.com/i6512399401825075719/ 1.<Servlet简单实现开发部署过程> 2.<Serv ...
- PHP靶场-bWAPP环境搭建
0x00 靶场介绍 bwapp是一款非常好用的漏洞演示平台,包含有100多个漏洞.开源的php应用后台Mysql数据库. 0x01 安装 BWAPP有两种安装方式,一种是单独安装,需部署在Apache ...
- 嫌Excel VBA执行速度慢,这些建议你一定要看
Excel是办公利器,这无需多言.尤其在办公室,Excel用的熟练与否,会的Excel知识点多不多,很大程度上决定了你工作是否高效,能否按时打卡下班.可我们也时常听到这样的吐槽:Excel好是好,可就 ...
- Android官方文档翻译 四 1.2Running Your App
Running Your App If you followed the previous lesson to create an Android project, it includes a def ...
- Metasploit生成木马入侵安卓手机
开始 首先你需要一个Metasploit(废话) Linux: sudo apt install metasploit-framework Termux: 看这里 指令 sudo su //生成木马文 ...
- 【Android】安卓四大组件之Activity(二)
[Android]安卓四大组件之Activity(二) 前言 在这篇文章之前,我已经写过了一篇有关Activity的内容,是关于activity之间的页面跳转和数据传递,而这篇文章着重强调的是Acti ...
- spring拦截机制中Filter(过滤器)、interceptor(拦截器)和Aspect(切面)的使用及区别
Spring中的拦截机制,如果出现异常的话,异常的顺序是从里面到外面一步一步的进行处理,如果到了最外层都没有进行处理的话,就会由tomcat容器抛出异常. 1.过滤器:Filter :可以获得Http ...
- ☕【Java深层系列】「并发编程系列」让我们一起探索一下CyclicBarrier的技术原理和源码分析
CyclicBarrier和CountDownLatch CyclicBarrier和CountDownLatch 都位于java.util.concurrent这个包下,其工作原理的核心要点: Cy ...