在CodeIgniter 3中设置数据库连接超时

Jor*_*rdy 5 php database pdo codeigniter connection-timeout

我们正在使用2个数据库,我们的本地数据库和外部数据库.但是现在我们的外部数据库已关闭(我们仍在开发中,所以我们遇到了这个问题很好)并且它现在尝试连接到外部数据库30秒,如何将数据库的连接超时更改为类似1 - 2秒?我在我的数据库上使用Codeigniter和PDO驱动程序.有没有人为这个问题提供干净的解决方案?

Vol*_*enD 5

它不是一个记录的功能,但您可以application/config/database.php通过添加options设置从数据库配置文件()执行此操作,例如:

$db['default']['options'] = array(PDO::ATTR_TIMEOUT => 5);
Run Code Online (Sandbox Code Playgroud)

使用相同内部机制的其他设置(例如,PDO::MYSQL_ATTR_INIT_COMMAND设置$db['default']['stricton']PDO::MYSQL_ATTR_COMPRESS设置$db['default']['compress'])不受此影响.

如果你想更深入或检查哪些选项设置,您可以登录$this->optionsdb_connect在功能上system/database/drivers/pdo/pdo_driver.php,并检查database/drivers/pdo/subdrivers/pdo_mysql_driver.php.

  • 正是我所寻找的,像魅力一样工作!非常感谢!!我还不能给你赏金,但一旦我能做就会这样做. (2认同)