出于某种原因,我想将 postgresql 连接超时设置为 5 秒。我正在使用 Zend Framework 1.12,为了创建 postgresql 连接,我正在使用 Zend_Db_Adapter_Pdo_Pgsql 类,我没有找到任何可以定义连接超时的参数。
我四处寻找,但没有找到任何东西。请给我一些建议,我该怎么做。
谢谢
最佳答案
我找到了解决方案:你需要在每次查询前设置一个超时时间:
$db->beginTransaction();
$db->query('SET LOCAL statement_timeout = 2000'); //2 Sek. Timeout
$res = $db->fetchAll($select);
这只会影响对数据库的 NEXT 查询,并且重要的是您有一个事务。没有交易,它将无法工作。 如果你在它之后再做一个Query(捕获超时,回滚事务),它仍然会有默认的TIMEOUT。 创建数据库例程将不起作用!您确实必须在函数中设置超时。
关于php - 在 postgresql PDO 连接中设置连接超时参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30573567/