【问题标题】:Exiting TOAD while cancel pending?在取消挂起时退出 TOAD?
【发布时间】:2014-07-07 03:07:12
【问题描述】:

快速问题:在尝试取消挂起的查询时退出 TOAD(对于 Oracle)是否有害?

我应该让这个对话框正常运行吗?

我确实有截图,但在我有 10 个代表之前无法发布图片。

编辑:它已经持续了大约 30 分钟。 EDIT2:我应该提到它不是更新查询,纯粹是搜索。

谢谢,

【问题讨论】:

  • 无害,但会导致 CPU 使用率过高,以防代价高昂的查询。无论如何,您都可以要求您的 DBA 杀死它
  • 不是一个真正的答案,因此使用 cmets,但您可以使用 ALT+F4 关闭此对话框并重新使用您的 TOAD 窗口而不关闭 TOAD。你是否应该是另一回事。

标签: sql oracle toad


【解决方案1】:

当这种情况发生并且我已经等待了足够长的时间(并且 Cancel 按钮无效)时,我打开任务管理器并应用 "在Toad.exe 进程上的“结束进程树”命令。

如果数据库连接丢失,数据库会自动回滚所有未提交的更改。 所以它是无害的。

有一次我通过查找会话列表对此进行了调查。当 Toad 在执行查询的过程中不知何故失去与服务器的连接时,似乎会发生这种情况。

当您想知道为什么查询需要这么长时间(实际上不应该)并单击 Cancel 按钮时,Toad 会进入 "limbo" 状态它正在等待来自服务器的 cancel 操作的结果(不知道连接丢失)。

问题是没有办法停止这个等待并恢复正常。这是 Toad 中的一个错误。没有其他方法可以解决这个问题。我不确定他们什么时候会修复它,如果有的话。

【讨论】:

  • 谢谢。我一直想知道为什么它需要永远。感谢您抽出宝贵时间回答我的问题!
【解决方案2】:

我也遇到了同样的问题。

LIKE THIS FOR DAYS

在 TOAD 中取消正在运行的进程(处理或取消)需要时间(保持处理更长的时间和相同的时间)的一种解决方案是

只需禁用互联网连接,它会自动取消 toad 进程。

稍后转到会话>测试连接以重新连接到服务器

【讨论】:

  • 谢谢,禁用网络连接确实有助于阻止 TOAD 进入Cancel pending please wait 的无限循环
  • “只需禁用自动取消蟾蜍进程的互联网连接”,这解决了问题,谢谢。
【解决方案3】:

这些步骤至少对我有帮助:

  1. 会话 -> TestConnection(重新连接)

    此步骤需要一些时间,请耐心等待(您可能会得到 TOAD: Not Responding)

  2. 调试 -> 暂停执行

至少您不必从 TASK MANAGER 中强制终止该进程。

继续查询:)

【讨论】:

    【解决方案4】:

    如果您拥有对目标数据库的 sys / dba 级别访问权限,然后去终止 toad 会话,我编写了以下查询来识别并终止运行 30 分钟并浪费我宝贵时间的 toad 会话。

    SQL> select sid, username, serial#, status from v$session where machine like '%ACC%';

       SID USERNAME                          SERIAL# STATUS
    

       989 SYS                                  1307 INACTIVE
       991 PIN                                 15780 ACTIVE
    

    SQL> alter system kill session '991,15780' 立即; ORA-00031: 会话标记为终止

    然后繁荣! Toad 返回会话和控制 :)

    问候, 赛义德·谢赫

    【讨论】:

      猜你喜欢
      • 2018-04-27
      • 2012-01-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-01-09
      • 2020-08-26
      • 2012-03-16
      相关资源
      最近更新 更多