【问题标题】:SQL*Plus Scheduled Task Hangs After Connect timeoutSQL*Plus 计划任务在连接超时后挂起
【发布时间】:2018-09-17 21:15:01
【问题描述】:

我有一个执行sqlplus 命令的计划任务,并提供了用户名和密码。

偶尔会出现ORA-12170: TNS:Connect timeout occurred。在这些发生后,SQL*Plus 要求输入用户名,该用户名永远不会超时,无限期地暂停我的任务。

我该如何防范呢?是否有任何命令行选项可以防止这种情况发生?

任务批处理文件

...
sqlplus user/\"password\"@database@script.sql  >> "script.log"

脚本.sql

START TRANSACTION;
call schema.sync_task();
COMMIT;
quit;

成功的日志

SQL*Plus: Release 12.1.0.2.0 Production on Mon Sep 10 22:15:00 2018

Copyright (c) 1982, 2014, Oracle.  All rights reserved.

Last Successful login time: Mon Sep 10 2018 22:10:00 -04:00

Connected to:
Oracle Database 12c Standard Edition Release 12.1.0.2.0 - 64bit Production
With the Automatic Storage Management option

SP2-0310: unable to open file "TRANSACTION.sql"

Call completed.

Commit complete.

Disconnected from Oracle Database 12c Standard Edition Release 12.1.0.2.0 - 64bit Production
With the Automatic Storage Management option

失败的日志

SQL*Plus: Release 12.1.0.2.0 Production on Mon Sep 10 22:20:00 2018

Copyright (c) 1982, 2014, Oracle.  All rights reserved.

ERROR:
ORA-12170: TNS:Connect timeout occurred


Enter user-name: 

【问题讨论】:

    标签: scheduled-tasks sqlplus


    【解决方案1】:

    我没有找到一个干净的解决方案,但我确实找到了一个简单的解决方案。

    我已将计划任务的设置修改为如果运行时间超过一小时就停止。 10 分钟会更好,但这不是任务调度程序中的选项。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-09-12
      • 2013-08-22
      • 2017-03-07
      • 1970-01-01
      • 2023-03-08
      • 2012-11-13
      • 2010-11-07
      • 1970-01-01
      相关资源
      最近更新 更多