gpt4 book ai didi

Python psycopg2 超时

转载 作者:IT老高 更新时间:2023-10-28 20:39:42 26 4
gpt4 key购买 nike

我有一个大问题:运行我的 python 软件的服务器的路由器上似乎存在一些硬件问题。只有大约每三次才能成功连接到数据库。因此,psycopg2.connect() 最多可能需要 5 分钟才能获得超时异常。

2014-12-23 15:03:12,461 - ERROR - could not connect to server: Connection timed out
Is the server running on host "172.20.19.1" and accepting

这就是我正在使用的代码。

# Connection to the DB
try:
db = psycopg2.connect(host=dhost, database=ddatabase,
user=duser, password=dpassword)
cursor = db.cursor(cursor_factory=psycopg2.extras.DictCursor)

except psycopg2.DatabaseError, err:
print(str(err))
logging.error(str(err))
logging.info('program terminated')
sys.exit(1)

我为查询尝试了一些超时添加,但没有帮助,因为连接根本没有建立。

有没有办法,当无法建立连接时,我可以立即停止程序?

最佳答案

当对 connect 函数使用关键字参数语法时,可以使用任何 libpd 支持的连接参数。其中有 connect_timeout 秒:

db = psycopg2.connect (
host=dhost, database=ddatabase,
user=duser, password=dpassword,
connect_timeout=3
)

http://www.postgresql.org/docs/current/static/libpq-connect.html#LIBPQ-PARAMKEYWORDS

http://initd.org/psycopg/docs/module.html

连接超时引发 OperationalError异常(exception)。

关于Python psycopg2 超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27641740/

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