3

データベースからの大きなデータを処理するphpスクリプトがあります。N(100から100000まで試行)行ごとにテーブルから取得し、他のテーブルに挿入します。max_execution_timeは 0 に設定されます。すべての反復はトランザクションでラップされます。私が使用する各部分を選択するときpg_query()。しかし、1 ~ 2 時間後、スクリプトが で失敗しMaximum execution time of 0 seconds exceeded、エラー メッセージが の行を指していますpg_query()。誰かがこの問題を抱えていましたか?治療法はありますか?

更新日:

ここで提案された答えを試してみました-- max_input_time を -1 に設定します -- まだ運がありません。エラーはpg_query行から別の行に移動しましたが、これはかなりランダムな行のようです。だからpg_query私はそれとは何の関係もないと思いますmax_input_time.

4

2 に答える 2

1

max_execution_time = 0永久に実行することを意味します。

ただし、スクリプトを停止する可能性のある他のことがある可能性があります。たとえば、apache のデフォルトのスクリプト実行タイムアウトは 5 分です。

これを参照してください: ini_set('max_execution_time', 0) は悪い考えですか?

于 2013-02-15T09:27:45.417 に答える