2012-03-16 14 views
1

ユーザーが選択した日付範囲によっては、完了までに時間がかかることがあります。これにより、サーバがタイムアウトして(2006年:MySQLサーバがなくなった)、find()が失敗することがあります。私は次のようにタイムアウト値を変更しようとしました: ini_set( 'mysql.connect_timeout'、5);MySQLサーバーのタイムアウト値を増やす

私が想定しているのは、ホスティングパッケージのサーバー設定を上書きできないためです。私は、CakePHPを通じてMySQLサーバのタイムアウトを増やす上の任意のアドバイスのために非常に感謝される SET @@ session.wait_timeout = 60

: は、私は、次のコードを使用してホスティング会社から助言を受けました。

+0

タイムアウトするPHPスクリプトではないと確信していますか? – inquam

+0

私は、これらの結果を見つけたり、そのクエリとデータベースを大幅に最適化するための別の戦略について考えるべきだと思います。あなたは本当に*ユーザー*がページを読み込むのを待つことを望んでいますか? – deceze

答えて

0

は、私はあなたが

set_time_limit(250); 
+0

私は幸運なしでそれを試しました@NarayaN、あなたの提案に感謝します。 –

+0

@ CroninO'Mは動作していますか? –

+0

@ Viswanathan Iyer - 私のシナリオでは、 'set_time_limit()'が機能しませんでした。 –

0

は、私はあなたが別のアプローチを検討すべきだと思うというし、PHPの要求タイムアウトを増やすmysqlのタイムアウト必要がありますね。
phpがapacheによって実行されるため、タイムアウトになりますが、大きな値に設定することもできます(ただし、禁止するホスティングは禁止されています)。
ユーザーがデータをリクエストしたときにフォームをAJAXで送信しようとすることができます。いくつかのバックエンド技術(node.js)を使用してmysqlに接続し、データを照会します。その後、フロントエンドに送り返します。

+0

あなたのお返事ありがとうございます@マジック。あなたの提案は良い解決策のように聞こえますが、私はより簡単な修正を見つけることを望んでいました。 –

+0

より簡単で適切な解決策はページ分割です。あなたの応答データをページします。 – Magic

関連する問題