phpMyadmin의 최대 실행 시간


108

phpMyadmin에서 (일부) 쿼리를 실행하려고하면이 오류가 발생합니다.

치명적인 오류 : 140 행의 C : \ xampp \ phpmyadmin \ libraries \ dbi \ mysql.dbi.lib.php에서 최대 실행 시간 60 초를 초과했습니다.

매우 큰 테이블 (9 백만 개 이상의 레코드)이 있기 때문에

C : \ xampp \ php \ php.ini 파일을 편집했습니다.

"최대 실행 시간"값을 60에서 1000으로 변경 한 다음 PHP를 다시 시작하고 여전히 동일한 오류가 발생합니다.

어떤 해결책이 있습니까?


1
서버를 다시 시작해야합니다. config 또는 ini 파일에서 변경 한 후.
4302836 2013-07-29

답변:


196

동일한 오류가 있습니다.

xampp \ phpMyAdmin \ libraries \ config.default.php

찾다 : $cfg['ExecTimeLimit'] = 600;

'600'을 '6000'과 같이 더 높은 값으로 변경할 수 있습니다.

최대 실행 시간 (초)은 (제한이없는 경우 0)입니다.

이렇게하면 오류가 수정됩니다.


1
코드 서식을 사용하여 코드가 무엇이고 무엇이 아닌지 명확히 할 수 있습니다. :)
span

24
이 파일을 편집하지 말아야한다는 것이 (파일 헤더에서) 매우 분명합니다. 대신 config.inc.php를 편집하여 다른 답변에서 말했듯이이 줄을 추가해야합니다
dsnunez

1
아래에서 내 대답을 확인하십시오. 그게 갈 길이다;)
M_R_K 2015-04-26

3
이것을에 추가해도 config.inc.php나를 위해 일하지 않았습니다. config.default.php도움과 작업을 수정 했습니다.
Spurious

wamp 경로의 경우 wamp64\apps\phpmyadmin4.6.4\libraries\config.default.php또는 phpmyadmin을 클릭 wamp tray icon > Apache > Alias Directories하고 편집 하여 phpmyadmin 디렉토리의 경로를 찾을 수 있습니다 . dsnunez에서 언급 한 바와 같이 또한, 편집에 더 나은 config.inc.php--edit-- 편집 config.inc.php나를 위해 작동하지 않았다
AbsarAkram

107

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

1
훨씬 더 작은 데이터 세트 (~ 120k 행)를 제외하고 똑같은 문제가 발생했습니다. 당신의 대답은 확실히 일을 훨씬 더 좋게 만들었습니다 :).
Rob

테이블에서 찾아보기를 누르면 즉시 Windows 용 xampp에 대한 스크립트 타임 아웃이 발생했습니다 ~ 130mb
Matthew Lock

슬프게도 $cfg['ExecTimeLimit'] = 6000;내 설치에 영향을 미치지 않는 것 같습니다. 전체 서버에 적용되는 php.ini보다는 로컬로 설정하고 싶지만 이것이 유일한 옵션 일 수 있습니다.
Simon East

1
모든 것이 무엇인지 확실하지 않지만 내 투표를 얻습니다. :-)
nawissor

13

나는 컬을 실행하는 동안 같은 문제에 직면했습니다. php.ini파일 에서 다음을 변경했을 때 바로 잡았습니다 .

max_execution_time = 1000 ;

그리고 또한

max_input_time = 1000 ;

아마도 위의 두 가지 변경을 수행하고 아파치 서버를 다시 시작하여 문제를 해결해야합니다.

위의 내용을 변경 한 후에도 문제는 지속되며 mysql을 사용하는 일부 데이터베이스 작업 때문이라고 생각되면 다음과 같이 변경해 볼 수도 있습니다.

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

이 모든 것은 php.ini 파일에서 변경되어야하며 변경 사항을 확인하려면 Apache 서버를 다시 시작해야합니다.


7

변경 사항이 적용됩니다. 그러나 'xampp'스택이있는 php.ini 구성 파일은 잠재적으로 거의 없습니다. 'apache'특정 php.ini가 있는지 여부를 확인하십시오. 잠재적 위치는 다음과 같습니다.

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


1
내 xampp에서 해당 파일을 입력 C:\xampp\php\php.ini하고 줄 번호 442로 이동합니다 (대략-수동 편집 후 해당 줄 번호가 변경 될 때가 있음). max_execution_time = 1000 하지만 이것은 저에게 작동하지 않습니다. 그리고 난 C에서이 작업을 시도 할 것이다 : \ XAMPP \ phpMyAdmin에 \ config.inc.php를$cfg['Servers'][$i]['bs_temp_blob_timeout'] = 1200;
엘스

5

php.ini웹 애플리케이션을 변경 하려면 Apache를 다시 시작해야합니다.

함수를 실행하는 PHP 스크립트를 실행하여 변경 사항이 발생했는지 확인해야합니다 phpinfo(). 해당 함수의 출력은 시간 초과 값을 포함하여 많은 PHP 매개 변수를 알려줍니다.

php.iniApache에서 사용하는 파일과 다른 복사본을 변경했을 수도 있습니다 .


5

ini_set('max_execution_time', 0);또는라는 파일 이름을 만들고 php.ini첫 번째 줄 max_execution_time=0을 입력 한 다음 저장하고 응용 프로그램의 루트 폴더에 파일을 넣습니다.

그게 다야. 행운을 빕니다.


3
있다 set_time_limit()기능. 를 (남용) 사용할 필요가 없습니다 ini_set().
ThiefMaster 2011

3

Wamp 사용자에게는

이동 : wamp\apps\phpmyadmin3.3.9\libraries

536 행 아래, locate $cfg['ExecTimeLimit'] = 0;

값을 0에서 6000으로 변경합니다. 예 :

$cfg['ExecTimeLimit'] = 0;

$cfg['ExecTimeLimit'] = 6000;

wamp 서버와 휴를 다시 시작하십시오.

마법처럼 작동합니다!


이것은 다른 방법으로 라운드 없어야합니다, 실제로 잘못 0수단을 더 실행 시간 제한
user919426

2

php.ini에서 mysql.connect_timeout도 확인해야합니다. 소켓을 닫고 Fatal을 반환합니다. 예를 들어 다음과 같이 변경하십시오.

mysql.connect_timeout = 3600

그 시간은 항상 초 단위로 계산되므로 제 예에서는 1 시간이 있습니다.


2

WAMP에서 나를 위해 일한 것은 \ Wamp64 \ alias \ phpmyadmin.conf 파일을 수정하는 것이 었습니다.

 php_admin_value max_execution_time 600
 php_admin_value max_input_time 600

라이브러리 파일을 변경할 필요가 없습니다.


1

아마도 XMAPP을 서비스로 사용하고있을 것입니다. XMAPP를 제대로 다시 시작하려면 XMAPP 제어판을 열어야합니다. Apache와 MySQL에 대해 "Svc"mdodules를 모두 선택 취소해야합니다. 그런 다음 종료를 클릭하고 이제 XMAPP를 다시 시작하면 완료됩니다.



1

무제한 시간을위한 'ZERO'.

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' 
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.