数据库
oracle数据库自启动和关闭脚本调用
数据库灾备恢复小结
DMS使用文档
Oracle12C安装文档_李光升
Centos配置yum源的操作步骤-李光升
CCS数据库突然卡顿问题解决-徐铭
Centos 7.9静默安装oracle 12cR2详细步骤
mysql5.7数据库sql语句数据类型隐式转换的反逻辑BUG
RDS MySQL临时文件导致实例磁盘空间满且出现“锁定中”状态
关于Mysql引擎Myisam和InnoDB的使用
MySQL查询语句中in和exists区别详解-知识点
Mysql 的存储过程中 WITH AS 的语法和使用
Mysql 性能调优-详解
oracle数据库DG搭建
SUSE linux 配置时钟同步服务NTP/Chrony
oracle数据库实例开启操作文档
oracle数据库实例关闭操作文档
oracle数据库DBS备份配置文档v2
ALiYun ECS CENTOS数据上传到OSS操作手册
Oracle - LOGMINER配置方法
oracle sysaux表空间爆满清理unified auditing数据
sysaux表空间爆满WRI$_ADV_OBJECTS占用严重
SAP权限对象
SYSAUX表空间WRI$\_ADV\_OBJECTS表过大清理V2
oracle:表访问方式
ORA性能诊断调优
数据字典(DICT)和性能事件类型(EVENT)
日志挖掘LogMiner
RMAN sql_id “0az7czjdw8z7j” 执行计划异常
Oracle11g Active Data Guard搭建、管理
ORACLE LOGMINER配置v2
oracle日志组调整
ECS linux服务器挂载nas磁盘失败
oracle数据库修改字符集
datapump数据泵导入导出
OA系统数据库ADG架构搭建
IPS数据库SQL执行异常:ORA-00600
oracle 12c 创建PDB
oracle数据库监听异常
lvm:阿里云磁盘扩容,lvm扩容
Redis基本操作
SAP S4 CLIENT COPY(800->400)
日常数据库操作
PGSQL操作
# ORA-00054: resource busy问题处理
OA数据库服务器故障分析报告
CCS数据库生产数据库(北京中心)覆盖到VER环境数据库(乌兰察布):使用nonpdb to pdb迁移方式
WINDOWS环境Django框架连接MySQL数据库配置
Django开发学习实战
什么是向量嵌入?
OA数据库服务器内次异常增长问题分析
基于AI的自动化服务器管理
AI技术发展趋势及其在农牧食品行业的创新应用
IPS数据库日志表数据归档&表分区
国产编程模型GLM-4.6海外爆火:性能媲美ClaudeSonnet,性价比优势显著
免费开源的零代码平台 / 无代码平台,敲敲云 v2.2.0 版本
数据库原理与应用
AI发展近况分析
ORACLE ADG环境下解除ADG关系并激活备库为独立数据库
麦肯锡重磅报告:关于未来的生存指南,当57%的工作被自动化,我们如何与AI结成利益共同体
【Oracle】Cursor(游标)
ORACLE数据库在曾经的备库(路径一致)进行不完全恢复
获取执行计划的6种方法
人工智能行业的发展已进入“系统竞争”时代
2026年AI与机器人发展趋势
事务未提交导致行锁等待问题处理
MongoDB日常操作命令
2026年人工智能前沿技术趋势与应用落地分析
Doris开发
本文档使用「觅思文档专业版」发布
-
+
首页
# ORA-00054: resource busy问题处理
# ORA\-00054: resource busy问题处理 1. **一、问题描述** 1. 水晶球同事反馈执行truncate table操作时报错:ORA\-00054: resource busy and acquire with NOWAIT specified or timeout expired。 2. **二、问题处理** 1. 方法 1:直接查询锁信息 1. 使用以下 SQL 查询锁定表和对应的会话信息: 2. sql 1. SELECT 2. a.sid, 3. a.serial\#, 4. a.username, 5. a.osuser, 6. a.program, 7. a.machine, 8. a.status, 9. b.locked\_mode, 10. c.owner, 11. c.object\_name, 12. c.object\_type 13. FROM 14. v$session a, 15. v$locked\_object b, 16. dba\_objects c 17. WHERE 18. a.sid \= b.session\_id 19. AND b.object\_id \= c.object\_id 20. AND c.object\_name \= 'YOUR\_TABLE\_NAME'; \-\- 替换为你的表名 3. 字段说明: 1. \- \`SID\` 和 \`SERIAL\#\`:会话的唯一标识符(用于终止会话)。 2. \- \`USERNAME\`:数据库用户。 3. \- \`OSUSER\`:操作系统用户。 4. \- \`PROGRAM\`:正在使用的程序(如 SQL Developer、PL/SQL 等)。 5. \- \`MACHINE\`:客户端机器名。 6. \- \`LOCKED\_MODE\`:锁的模式(如 \`3\` 表示行级排他锁,\`6\` 表示表级排他锁)。 7. \- \`OBJECT\_NAME\`:被锁定的表名。 2. \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- 3. 方法 2:查询所有被锁定的对象 1. 如果不知道具体表名,可以列出所有被锁定的对象: 2. sql 1. SELECT 2. s.sid, 3. s.serial\#, 4. s.username, 5. s.osuser, 6. s.program, 7. s.machine, 8. lo.object\_id, 9. do.object\_name, 10. lo.locked\_mode 11. FROM 12. v$locked\_object lo 13. JOIN dba\_objects do ON lo.object\_id \= do.object\_id 14. JOIN v$session s ON lo.session\_id \= s.sid; 4. \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- 5. 方法 3:查询阻塞会话(Blocking Session) 1. 如果某个会话正在等待资源,可以通过以下查询找到阻塞它的会话: 2. sql 1. SELECT 2. blocking\_session AS blocking\_sid, 3. sid AS waiting\_sid, 4. serial\#, 5. wait\_class, 6. event, 7. seconds\_in\_wait 8. FROM 9. v$session 10. WHERE 11. blocking\_session IS NOT NULL; 6. \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- 7. 终止占用资源的会话 1. 如果确认某个会话需要终止,可以使用以下命令: 2. sql 1. ALTER SYSTEM KILL SESSION 'SID,SERIAL\#'; \-\- 替换为实际的 SID 和 SERIAL\# 3. 示例: 4. sql 1. ALTER SYSTEM KILL SESSION '123,4567'; 8. \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- 9. 常见锁模式说明 10. \- 2 (Row\-S, SS)\*\*: 行级共享锁。 11. \- 3 (Row\-X, SX)\*\*: 行级排他锁。 12. \- 4 (Share, S)\*\*: 表级共享锁。 13. \- 5 (Share Row\-X, SSX)\*\*: 共享行级排他锁。 14. \- 6 (Exclusive, X)\*\*: 表级排他锁(DDL 操作常用)。 15. \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- 16. 预防锁冲突 17. 1\. 优化事务逻辑:减少事务时间,及时提交(\`COMMIT\`)或回滚(\`ROLLBACK\`)。 18. 2\. 避免长事务:长时间未提交的事务会持续占用锁。 19. 3\. 使用 \`SELECT ... FOR UPDATE NOWAIT\`:如果不需要等待锁,指定 \`NOWAIT\`。 20. 4\. 监控工具:定期使用 \`v$session\` 和 \`v$locked\_object\` 监控锁状态。
徐铭
2025年4月1日 09:24
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
Word文件
PDF文档
PDF文档(打印)
分享
链接
类型
密码
更新密码
有效期