PHP 5.5 と MySQL 5.5 の組み合わせでは何も問題なかったのに
PHP 5.2 と MySQL 5.1 にしたらハマっちゃいました。
php
$dbh = new mysqli($host, $user, $pass, $db);
と何の気なしに書いて、単体テストでも問題なく動作していたが
連結テストをすると、なぜかクエリが失敗する現象が発生。
原因は、時間のかかる処理をPHP内で行っていたことに寄与する、
PHPとMySQLの接続時間タイムアウトでした。
php
$dbh = mysqli_init();
$dbh->real_connect($host, $user, $pass, $db, $port, $socket, MYSQLI_CLIENT_INTERACTIVE);
というふうに、real_connect()を利用し、MySQLのinteractive_timeoutを使う。
はじめ、
php
$dbh = mysqli_init();
$dbh->options(MYSQLI_OPT_CONNECT_TIMEOUT,3600)
$dbh->real_connect($host, $user, $pass, $db, $port);
を指定したけど、変わらずでした。
まだ全然追求してません、ご了承ください。