gpt4 book ai didi

python - 如何检查 python 脚本中的命令是否卡住并采取替代操作?

转载 作者:行者123 更新时间:2023-12-01 09:30:56 26 4
gpt4 key购买 nike

我正在编写一个脚本来关闭 Oracle 数据库

我有以下脚本

import cx_Oracle
# need to connect as SYSDBA or SYSOPER
connection = cx_Oracle.connect("/", mode = cx_Oracle.SYSDBA)
# first shutdown() call must specify the mode, if DBSHUTDOWN_ABORT is used,
# there is no need for any of the other steps
connection.shutdown(mode = cx_Oracle.DBSHUTDOWN_IMMEDIATE)
# now close and dismount the database
cursor = connection.cursor()
cursor.execute("alter database close immediate")
cursor.execute("alter database dismount")
# perform the final shutdown call
connection.shutdown(mode = cx_Oracle.DBSHUTDOWN_FINAL)

在此脚本中,“cursor.execute("alter database close instant")”可能会在不可预见的情况下运行很长时间。如何让脚本等待 5 分钟,如果没有完成,请采取替代操作,例如停止此命令或执行替代命令

谢谢,坦维尔

最佳答案

您可以通过创建具有各种超时参数(例如SQLNET.INBOUND_CONNECT_TIMEOUTSQLNET)的sqlnet.ora 配置文件来配置cx_Oracle 使用的Oracle Net 层。 RECV_TIMEOUTSQLNET.SEND_TIMEOUT 等。

您可以阅读文档here this answer中有更多详细信息.

关于python - 如何检查 python 脚本中的命令是否卡住并采取替代操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49968248/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com