phpMyAdminの「Fatal error: Maximum execution time of 300 seconds exceeded」の対策

スポンサーリンク

PHPの処理に時間がかかると「Fatal error: Maximum execution time of 300 seconds exceeded」のようなエラーメッセージが表示されます。これはPHPスクリプトの時間制限を超えてしまったという意味です。

php.iniの「max_execution_time」で制限時間を緩めることで解決できます。

max_execution_time=3600

秒数を指定するので、この例の3600は1時間になります。本来は危険な設定ですが、どうしてもデータベースのインポートなどで時間がかかる場合のみの限定的な対応です。完了後、小さい数値に戻すのを忘れないでください。

phpMyAdminでエラーが生じる場合

上記の設定を行ってもphpMyAdminでデータベースのインポートなど時間がかかる処理を行うと冒頭のエラーメッセージが表示される場合があります。

これは、phpMyAdminの設定ファイル(config.default.php)で時間制限されているためです。

$cfg['ExecTimeLimit'] = 300;

「300」は300秒のことです。この制限に引っ掛かるため「Fatal error: Maximum execution time of 300 seconds exceeded」となるわけです。この数値を3600にすれば1時間になります。

$cfg['ExecTimeLimit'] = 3600;

無制限で実行したければ「0」にします。

これでエラーが解消され、時間がかかるデータベースインポートも実行可能になります。

PHPの基礎が身に付いたかチェックするなら

PHP「直す力」養成ドリル
スポンサーリンク