web-dev-qa-db-ja.com

phpMyadminでの最大実行時間

PhpMyadminで(一部の)クエリを実行しようとすると、このエラーが発生します

致命的なエラー:行140のC:\ xampp\phpmyadmin\libraries\dbi\mysql.dbi.lib.phpで最大実行時間が60秒を超えています

非常に大きなテーブル(900万を超えるレコード)があるため

ファイルC:\ xampp\php\php.iniを編集しました

「最大実行時間」の値を60から1000に変更し、PHPを再起動しても同じエラーが発生します。

解決策はありますか?

92
ahmed

同じエラーが発生しました。

xampp\phpMyAdmin\libraries\config.default.php

$cfg['ExecTimeLimit'] = 600;を探します

「600」は、「6000」などのより高い値に変更できます。

秒単位の最大実行時間は(無制限の場合は0)です。

これでエラーが修正されます。

171
user1900623

WindowsのXamppバージョンの場合

追加この行をxampp\phpmyadmin\config.inc.php

$cfg['ExecTimeLimit'] = 6000;

そしてxampp\php\php.iniに変更します

post_max_size = 750M 
upload_max_filesize = 750M   
max_execution_time = 5000
max_input_time = 5000
memory_limit = 1000M

そして、変更xampp\mysql\bin\my.ini

max_allowed_packet = 200M
95
M_R_K

カールの実行中に同じ問題に直面しました。 php.iniファイルで次の内容を変更すると、正しくなりました。

max_execution_time = 1000 ;

そしてまた

max_input_time = 1000 ;

上記の2つの変更を行い、Apacheサーバーを再起動することにより、おそらく問題を解決する必要があります。

上記を変更した後でも問題は解決せず、mysqlを使用したデータベース操作が原因であると思われる場合は、これも変更してみてください。

mysql.connect_timeout = 1000 ; // this is not neccessary

このすべてをphp.iniファイルで変更し、Apacheサーバーを再起動して変更を確認する必要があります。

13
Sony Mathew

変更が機能するはずです。ただし、「xampp」スタックを含むphp.ini構成ファイルはほとんどありません。 「Apache」固有のphp.iniがあるかどうかを確認してください。 1つの潜在的な場所は次のとおりです。

C:\ xampp\Apache\bin\php.ini

6
Brian

Webアプリケーションのphp.iniを変更するには、Apacheを再起動する必要があります。

関数phpinfo()を実行するPHPスクリプトを実行して、変更が行われたことを確認する必要があります。その関数の出力は、タイムアウト値を含む多くのPHPパラメーターを示します。

また、Apacheが使用するのとは異なるphp.iniのコピーを変更した可能性があります。

4
Bill Karwin

ini_set('max_execution_time', 0);またはphp.iniというファイル名を作成し、最初の行max_execution_time=0を入力して保存し、アプリケーションのルートフォルダーにファイルを配置します。

それでおしまい。幸運を。

3
Karthikeyan

Php.iniでは、mysql.connect_timeoutを確認する必要があります。ソケットを閉じてFatalを返すのは、それが原因です。したがって、たとえば、次のように変更します。

mysql.connect_timeout = 3600

その時間は常に秒単位でカウントされるため、この例では1時間です。

2
andymnc

xampp/php/php.iniに移動します

この行を見つけます:

max_execution_time=30

そして、その値を任意の数値に変更します。 Apacheを再起動します。

1
KeepMove

Wampユーザーにとっては、

wamp\apps\phpmyadmin3.3.9\librariesに移動します

536行目、locate $cfg['ExecTimeLimit'] = 0;

値を0から6000に変更します。たとえば、

$cfg['ExecTimeLimit'] = 0;

$cfg['ExecTimeLimit'] = 6000;

Wampサーバーとphewを再起動します。

それは魔法のように動作します!

1

おそらく、XMAPPをサービスとして使用しているため、XMAPPを適切に再起動するには、XMAPPコントロールパネルを開いて、ApacheとMySQLの両方の「Svc」コマンドのチェックを外す必要があります。次に、終了をクリックして、XMAPPを再起動すると完了です。

1
Jamal

WAMPでうまくいったのは、ファイルを変更することでした:\ Wamp64\alias\phpmyadmin.conf、行:

 php_admin_value max_execution_time 600
 php_admin_value max_input_time 600

ライブラリファイルを変更する必要はありませんでした。

1
Casso

無期限の「ゼロ」。

C:\ Apache24\htdocs\phpmyadmin\libraries\Config.class.php

/**
 * maximum execution time in seconds (0 for no limit)
 *
 * @global integer $cfg['ExecTimeLimit']
 */
$cfg['ExecTimeLimit'] = 0;

MySQLからクエリまたはPHPクエリとして大きなファイルを直接インポートすることもできます。

この方法を使用して、500,000行でローカルサーバーにインポートするのに18秒かかりました。

(最初にテーブルを作成)-その後:

LOAD DATA LOCAL INFILE 'Path_To_Your_File.csv' 
INTO TABLE Your_Table_Name 
FIELDS TERMINATED BY ',' 
LINES TERMINATED BY '\n' 
1
KDawg