3
嗨我有这条线连接到MySQL数据库,只是想知道是否有一种方法来设置连接尝试超时?谢谢。可以在连接尝试php mysqli设置超时?
$db = new mysqli($server, $usr, $passwd, $dbname);
嗨我有这条线连接到MySQL数据库,只是想知道是否有一种方法来设置连接尝试超时?谢谢。可以在连接尝试php mysqli设置超时?
$db = new mysqli($server, $usr, $passwd, $dbname);
是的,您可以指定一个超时显式地尝试使用mysqli从您的php程序连接到MySQL数据库。
虽然它有点毛。当您使用new mysqli()
时,您使用一组可重用连接。如果你想设置一个超时,或任何其他选项,你需要使用real_connect
代替,像下面这样:
$timeout = 30; /* thirty seconds for timeout */
$link = mysqli_init();
$link->options(MYSQLI_OPT_CONNECT_TIMEOUT, $timeout) ||
die 'mysqli_options croaked: ' . $link->error;
$link->real_connect($server, $usr, $passwd, $dbname) ||
die 'mysqli_real_connect croaked: ' . $link->error;
有这里有一个体面的解释:http://php.net/manual/en/mysqli.real-connect.php
这是完美的。非常感谢。我没有解决Web应用程序中的数据库事件。现在我可以检测到超时并切换到从站数据库。干杯! – Peter 2016-10-22 10:25:44