【问题标题】:How to drop package when object locked?对象锁定时如何丢弃包裹?
【发布时间】:2013-08-21 03:41:05
【问题描述】:

包裹被锁后如何丢弃。我无法找出要杀死的会话。所以我想重新创建包。

错误:

错误报告: ORA-04021: 等待锁定对象 temp.PRODUCT 时发生超时 04021. 00000 - “等待锁定对象 %s%s%s%s%s 时发生超时” *原因:在等待锁定库对象时,发生超时。 *操作:稍后重试操作。

【问题讨论】:

  • 你试图找到什么会话?你不能从gv$accessgv$session 中得到任何有用的东西吗?当然,如果某些东西正在积极使用它,那么您可能并不想现在就放弃它。
  • 是的,我可以看到一些 sid 处于活动状态....
  • 我怎样才能杀死这个会话ID
  • this answer。但是,这不是您应该轻易做的事情,请确保您知道自己在做什么以及后果是什么。此外,如果它真的很忙,那么它可能不会立即死亡,它可以完成它正在做的事情和/或回滚它所做的任何工作。
  • @AlexPoole 它从早上开始一直在运行......所以我只想终止这个会话......但我无法终止,因为我遇到了错误。从命令中的第 7,819 行开始出错:ALTER SYSTEM KILL SESSION '2148,26058' IMMEDIATE 错误报告:SQL 错误:ORA-00030:用户会话 ID 不存在。 00030. 00000 - “用户会话 ID 不存在。” *原因:用户会话 ID 不再存在,可能是因为会话已注销。 *操作:使用有效的会话 ID。

标签: sql oracle oracle10g plsqldeveloper


【解决方案1】:

Metalink 上有一条注释“谁持有我的图书馆缓存针” - 或类似的东西。 也可以看看这篇文章:

http://oracle-study-notes.blogspot.de/2009/05/find-session-holding-library-cache-lock.html

【讨论】:

    猜你喜欢
    • 2019-11-07
    • 2020-01-17
    • 2019-07-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-24
    • 2019-05-15
    相关资源
    最近更新 更多