ORA-04021 timeout occurred while waiting to lock object
用户要求删除一个数据库的用户 GREENPASS,在删除的过程中,报错如下:
drop user GREENPASS * ERROR at line 1: ORA-04021: timeout occurred while waiting to lock object NEWDR.HNDR_SMS_LOG
处理过程
1. 首先查询NEWDR.HNDR_SMS_LOG,这是一个'PROCEDURE';
2. 现在报错,不能对此对象进行锁定。
3. 看看什么会话在访问此对象:
select B.SID, b.USERNAME, b.MACHINE FROM V$ACCESS A, V$SESSION B WHERE A.SID = B.SID and a.OBJECT = 'HNDR_SMS_LOG' and a.TYPE = 'PROCEDURE';
SID USERNAME MACHINE ---------- ------------ ------------------- 520 NEWDR WORKGROUP\BONC02
4. 根据sid获取操作系统的进程号
select spid os_sid from v$process where addr = (select paddr from v$session where sid = &oracle_sid);
old 3: where addr = (select paddr from v$session where sid = &oracle_sid) new 3: where addr = (select paddr from v$session where sid = 520)
OS_SID ------------ 29360
5. 询问业务人员,可以直接杀掉进程
ps -ef|grep 29360 kill -9 29360
6. 重新尝试 SQL> drop user GREENPASS; 用户已丢弃
-----------------------------------------------
sid 为 520 对应的语句 部分如下:
INSERT /*+ APPEND */ INTO FACT_INFO_USER_BEFORE (ACCT_MONTH, USER_NO, DEVICE_NUMBER, SERVICE_CODE, AREA_ID, CITY_ID, USER_DINNER, INNET_MONTH, AVG_ARPU, ACCT_ARPU, IS_ACCT, USER_TYPE, EXPIRE_MONTH) SELECT /*+ USE_HASH(A,B,C,D,E,F,G)*/ :B1, C.USER_NO, C.DEVICE_NUMBER, C.TELE_TYPE, C.AREA_NO, C.CITY_NO, C.USER_DINNER, C.INNET_MONTH, A.AVG_FEE, B.ALL_FEE, NVL2(B.USER_NO, '1', '0'), (CASE WHEN F.CLUBMEM_LEVEL_SUB_CODE_LAST IN ('1', '2') AND F.CLUBMEM_LEVEL_SUB_CODE = '1' AND G.USER_NO IS NULL THEN '1' WHEN F.CLUBMEM_LEVEL_SUB_CODE_LAST IN ('1', '2') AND F.CLUBMEM_LEVEL_SUB_CODE = '2' AND G.USER_NO IS NULL THEN '2' WHEN F.CLUBMEM_LEVEL_SUB_CODE = '3' AND C.INNET_MONTH >= 4 AND A.AVG_FEE >= D.HIGH_STANDARD AND G.USER_NO IS NULL THEN '3' WHEN C.INNET_MONTH >= 4 AND A.AVG_FEE >= D.HIGH_STANDARD AND G.USER_NO IS NULL THEN '4' WHEN C.INNET_MONTH >= 4 AND A.AVG_FEE < D.HIGH_STANDARD AND A.AVG_FEE >= D.HIGH_STANDARD * 0.8 AND E.USER_TYPE <= '5' AND G.USER_NO IS NULL THEN '5' WHEN C.INNET_MONTH >= 4 AND A.AVG_FEE < D.HIGH_STANDARD AND A.AVG_FEE >= D.HIGH_STANDARD * 0.8 AND E.USER_TYPE > '5' THEN '6' WHEN C.INNET_MONTH >= 4 AND A.AVG_FEE < D.HIGH_STANDARD * 0.8 AND A.AVG_FEE >= 30 THEN '6'
ORA-04021 timeout occurred while waiting to lock object的更多相关文章
- ORA-04021:timeout occurred while waiting to lock object
编译某存储过程 ORA-04021 timeout occurred while waiting to lock object stringstringstringstringstring Cause ...
- 关于ORA-04021解决办法(timeout occurred while waiting to lock object)
某个应用正在锁定该表或者包 表为 select b.SID,b.SERIAL#,c.SQL_TEXT from v$locked_object a, v$session b, v$sqlarea c ...
- org.eclipse.jdi.TimeoutException:Timeout occurred while waiting for packet 1983.occurred
eclipse 增大junit内存配置 现象:eclipse在junit测试的时候出现如下错误 org.eclipse.jdi.TimeoutException:Timeout occurred wh ...
- Timeout occurred while waiting for latch: class 'ACCESS_METHODS_DATASET_PARENT'
前些天某个SQL Server数据库的错误日志爆出如下错误: Timeout occurred while waiting for latch: class 'ACCESS_METHODS_DATAS ...
- Timeout occurred while waiting for latch: class 'COLUMNSTORE_ROWGROUP_COLLECTION'
今天发现线上数据库主从延迟严重: SELECT ag.name AS ag_name, ar.replica_server_name AS ag_replica_server, dr_state.da ...
- org.eclipse.jdi.TimeoutException: Timeout occurred while waiting for packet 421. occured resuming VM.
环境: 导入excel的时候,会根据路径,读取EXCEL的数据. 原因: 电脑上的防火墙关闭
- 【我的Android进阶之旅】解决AndroidStudio编译时报错:Timeout waiting to lock artifact cache .
1. 错误描述 今天在Android Studio中,使用gradle命令的时候,出现了如下所示的错误: D:\GitLab Source\XTCLint>gradlew clean uploa ...
- Eclipse项目导入Android Stuio 配置出现 Timeout waiting to lock buildscript class cache for build file 'H:\studioproject\Generic_SN\build.gradle'
Eclipse项目导入Android Stuio 配置出现 Error:Timeout waiting to lock buildscript class cache for build file ...
- android studio :Timeout waiting to lock daemon addresses registry
一.开发中 android studio 突然遇到下面的错误提示: Error:Timeout waiting to lock daemon addresses registry. It is cur ...
随机推荐
- 详解java方法的重载
1.方法的重载: 方法名相同,参数列表不同就叫做方法的重载.
- 【jq】c#零基础学习之路(1)Hello World!
从今天起我会持续发表,这个就是一个日记型的,学习编程是枯燥的,况且我们还是零基础. 学前准备 1.编译环境 vs2010.vs2012.vs2015...(本人用的是vs2010旗舰版).vs2010 ...
- 学习css中得与惑
css的学习分享 所学的css知识看多,会看懂.这只是在实践中发现的问题: 一. ???h1比div还大 h1上下有边距 为什么浮动不了 (现不知道) 二. css写了 表现不出来.... ...
- VIM常用快捷键
光标前插入i,行首插入 拷贝当前行 yy或者Y 删除一行dd,删除后进入插入模式cc或者S 粘贴p 撤销u,重做ctrl + r 删除一行dd,删除后进入插入模式cc或者S
- C#-2 wpf 项目编程结构设计
View:界面布局 EXCEL ViewModel:流程,数据粘合胶水 Model: 1)DB 结构 (数据库结构) 2)绑定的数据(界面交互数据) Service:1)BLL(画流程图)画业务逻辑图 ...
- C-随笔
C语言的设计哲学之一: 程序员知道自己在干什么-没有安全带! 值的类型并不是值的内在本质, 而是取决于它被使用的方式 1.#include <stdio.h>在预处理器处理的时候把stdi ...
- ORA-00907: 缺失右括号
创建表时出现ORA-00907: 缺失右括号的情况 调整关键字的顺序 CREATE TABLE s_dept(ID PRIMARY KEY NOT NULL NUMBER(7),NAME NOT NU ...
- 模拟discuz发帖的类实现
一直想弄个discuz的数据采集程序,这2天研究了下discuz发帖涉及的几个数据库表,这里分享一下自己的处理方法. discuz发表主题设计的几个表:(这里列出了主要的几个相关的表) 1.主题表 p ...
- geohash基本原理
geohash基本原理是将地球理解为一个二维平面,将平面递归分解成更小的子块,每个子块在一定经纬度范围内拥有相同的编码,这种方式简单粗暴,可以满足对小规模的数据进行经纬度的检索 目录: 经纬度常识 认 ...
- OData 带更新的实例,并能取得元数据格式类型
http://www.cnblogs.com/kid1412/p/6012938.html#CreateANewEntity <<ABP框架>> OData 集成 文档目录 ...