私はPHPで書かれたWebアプリケーション用のマスター - スレーブ設定を持っています。私は読書のために使う奴隷のプールを持っていて、書いて使われているマスターは書いてあります。私は、削除されたクラッシュしたサーバーの自動化されたシステムを読み取りプールから取り込みたいと考えています。現在、私は以下を使用しています:MySQLサーバが起動しているかどうかを確認する最善の方法
foreach($readers as $reader)
{
$fp = @fsockopen($reader['host'],3306,$errno,$errstr,1);
if(!$fp)
{
//Remove from pool
}
unset($fp);
}
私の主な質問は、より信頼性の高い方法です。私は実際にMySQLサーバをチェックするのではなく、ポート3306の接続だけをチェックしているので、誤認がかなりあります。例外を発生させずにMySQLサーバをチェックする方法はありますか。 PHPのPDOとMySQLi拡張の動作
PHPが例外をスローして500 Server Errorでスクリプトを終了していたという問題が発生しました。 – mrkmg
心配しないで、私は@ symnbolがそこで働いていることに気づきませんでした。 – mrkmg
これは例外ではなく、単にエラーメッセージです。はい、 '@'やその他の一般的なエラー報告設定で制御することができます。 –