Wie löse ich eine Auszeit in phpmyadmin?

78

Ich möchte riesige ( mindestens 300 MB) SQL-Skripte über phpMyAdmin importieren.

Ich habe es versucht:

post_max_size = 750M
upload_max_filesize = 750M
max_execution_time = 300
max_input_time = 540
memory_limit = 1000M

in meiner php.iniDatei, aber ich bin noch immer Timeout - Fehler beim Import.

user1811486
quelle
Die Ausführung Ihres Skripts dauert mehr als 300 Sekunden. Nehmen Sie sich also Zeit, um es weiter zu erhöhen. Zu Ihrer Information: Sie sollten sich zuerst Ihren Code ansehen, warum die Ausführung des Skripts zu lange
dauert
Welchen Fehler bekommen Sie genau ?
Pekka
max_execution_time = 550 ist es richtig?
user1811486
Ich habe folgende Fehler erhalten: "Skript-Zeitlimit überschritten. Wenn Sie den Import beenden möchten, senden Sie dieselbe Datei erneut, und der Import wird fortgesetzt."
user1811486
3
Warum dann nicht dieselbe Datei erneut einreichen? phpMyAdmin scheint klug genug zu sein, um das Problem zu lösen?
Pekka

Antworten:

136

Wenn auch nach wiederholtem Upload immer noch ein Timeout-Fehler auftritt, ändern Sie bitte Ihre Einstellungen in

\phpmyadmin\libraries\config.default.php

von $cfg['ExecTimeLimit'] = 300;bis $cfg['ExecTimeLimit'] = 0;und neu starten. Jetzt gibt es kein Ausführungszeitlimit (Vertrauen, dass es sich um einen lokalen Server handelt).

Quelle: Zeitlimit für Skript in phpmyadmin ändern

jahajee.com
quelle
32
Oder noch besser, setzen Sie diese Einstellung in Ihre phpmyadmin/config.inc.php.
Bodo
Ich habe Ihren Vorschlag versucht, @canaaerus, aber er hat mein System durcheinander gebracht, selbst nachdem ich seinen Platz geändert und ihn schließlich rückgängig gemacht und den apache2-Server neu gestartet habe. Jetzt heißt es Fehler SQL-Abfrage: DocumentationEdit Edit SELECT commentFROM phpmyadmin. pma__column_infoWHERE db_name = 'bot4a' AND table_name = '' AND column_name = '(db_comment)' MySQL sagte: Dokumentation # 1100 - Tabelle 'pma__column_info' wurde nicht mit LOCK TABLES
Rodrigo
1
@ Rodrigo: Ich bin mir ziemlich sicher, dass dies nichts mit der obigen Einstellung zu tun hat. Auch sollten Sie dies eine neue Frage stellen und nicht als Kommentar.
Bodo
2
config.inc.phpist bei /Library/Application Support/appsolute/MAMP PRO/phpMyAdminmit MAMP unter Mac OS X
Shaun Dychko
Wie @chuchunaku sagt - Sie sollten config.inc.php STATT BEARBEITEN, sonst funktioniert es nicht. Dies sind die Einstellungen, die auf die nicht aktive Konfiguration zurückgesetzt werden.
Bysander
14

Ich hatte das gleiche Problem und benutzte die Befehlszeile, um die SQL-Datei zu importieren. Diese Methode hat 3 Vorteile:

  1. Es ist eine sehr einfache Möglichkeit, nur eine Befehlszeile auszuführen
  2. Es läuft viel schneller
  3. Es gibt keine Einschränkung

Wenn Sie dies tun möchten, befolgen Sie einfach diese 3 Schritte:

  1. Navigiere zu diesem Pfad (ich benutze Wamp):

    C: \ wamp \ bin \ mysql \ mysql5.6.17 \ bin>

  2. Kopieren Sie Ihre SQL-Datei in diesen Pfad (ex file.sql).

  3. Führen Sie diesen Befehl aus:

    mysql -u Benutzername -p Datenbankname <file.sql

Hinweis: Wenn Sie bereits den Pfad für die Variable msql enviroment festgelegt haben, müssen Sie Ihre Datei file.sql nicht in das Verzeichnis bin verschieben und sollten nur zum Pfad der Datei navigieren.

paulalexandru
quelle
Für andere auf osx; Sie müssen möglicherweise ./mysql(statt nur mysql) verwenden
Nicolai Krüger
14

Ich verwende Version 4.0.3 von MAMP zusammen mit phpmyadmin. Der Anfang von /Applications/MAMP/bin/phpMyAdmin/libraries/config.default.php lautet:

BEARBEITEN SIE DIESE DATEI NICHT, BEARBEITEN Sie stattdessen config.inc.php !!!

Das Ändern der folgenden Zeile in /Applications/MAMP/bin/phpMyAdmin/config.inc.php und das Neustarten von MAMP haben bei mir funktioniert.

$cfg['ExecTimeLimit'] = 0;
Chuchunaku
quelle
Einige der anderen Antworten besagen, dass eine Datei mit der Aufschrift "DIESE DATEI NICHT BEARBEITEN" bearbeitet werden soll. Warum ignorieren die Leute den Hinweis? Diese Antwort gibt solide Ratschläge und ignoriert den Hinweis oben in der Datei nicht.
Spencer Shattuck
12

Wenn Sie jedoch Plesk verwenden, ändern Sie Ihre Einstellungen in:

/usr/local/psa/admin/htdocs/domains/databases/phpMyAdmin/libraries/config.default.php

Wechseln Sie $cfg['ExecTimeLimit'] = 300;zu$cfg['ExecTimeLimit'] = 0;

Starten Sie mit der Plesk-Benutzeroberfläche neu oder verwenden Sie:

/etc/init.d/psa restart und /etc/init.d/httpd restart

DanX
quelle
7

Bei Verwendung von Cpanel / WHM befindet sich der Speicherort der Datei config.default.phpunter

/usr/local/cpanel/base/3rdparty/phpMyAdmin/libraries

und du solltest das $cfg['ExecTimeLimit'] = 300;auf ändern$cfg['ExecTimeLimit'] = 0;

user3057553
quelle
4

Ich hatte das Problem zuvor in XAMPPlocalhost mit phpmyadmin Version 4.2.11.

Das Timeout zu erhöhen php.inihalf auch nicht.

Dann habe ich bearbeitet xampp\phpMyAdmin\libraries\config.default.php, um den Wert von zu ändern $cfg['ExecTimeLimit'], der standardmäßig 300 war.

Das hat mein Problem gelöst.

Supratim Roy
quelle
4

Wenn einer von Ihnen WAMP verwendet, befindet sich zumindest in der aktuellen Version (3.0.6 x64) eine Datei, in <your-wamp-dir>\alias\phpmyadmin.confder einige Ihrer php.ini-Optionen überschrieben werden.

Bearbeiten Sie diesen Teil:

# To import big file you can increase values php_admin_value upload_max_filesize 512M php_admin_value post_max_size 512M php_admin_value max_execution_time 600 php_admin_value max_input_time 600

Artur Käpp
quelle
DANKE, dass du das gepostet hast - hat mir wirklich geholfen!
Greg Burkett
Das funktioniert wirklich. Datei \ alias \ phpmyadmin.conf überschreibt die Datei conf.inc.php, die sich im Verzeichnis app \ phpmyadmin befindet
gogagubi
1

Keine der oben genannten Antworten hat es für mich gelöst.

Ich kann nicht einmal den Ordner 'Bibliotheken' in meinem xampp - ubuntu finden.

Also habe ich einfach mit den folgenden Befehlen neu gestartet:

sudo service apache2 restart

und

sudo service mysql restart
  • Ich habe gerade Apache und MySQL neu gestartet. Wieder in phpmyadmin eingeloggt und es hat wie gewohnt funktioniert.

Danke mir .. !!

Deepak Keynes
quelle
0

Ich hatte auch dieses Problem und probierte verschiedene Speichererweiterungstechniken aus, die ich im Web gefunden hatte, hatte aber mehr Probleme damit. Ich habe mich entschlossen, den MySQL-Konsolenbefehl zu verwenden source, und natürlich müssen Sie sich keine Gedanken über die maximale Ausführungszeit und -beschränkungen von phpMyAdmin oder PHP machen.

Syntax: source c:\path\to\dump_file.sql

Hinweis: Es ist besser, einen absoluten Pfad zur Dump-Datei anzugeben, da das MySQL-Arbeitsverzeichnis möglicherweise nicht bekannt ist.

Victor Anuebunwa
quelle
-2

Um das Zeitlimit für die phpMyAdmin-Sitzung zu erhöhen, öffnen Sie config.inc.php im Stammverzeichnis von phpMyAdmin und fügen Sie diese Einstellung hinzu (an einer beliebigen Stelle).

$cfg['LoginCookieValidity'] = <your_new_timeout>;

Wo ist eine Zahl größer als 1800.

Hinweis:

Denken Sie immer daran, dass eine kurze Cookie-Lebensdauer für den Entwicklungsserver gut und schön ist. Tun Sie dies also nicht auf Ihrem Produktionsserver.

Referenz

josef
quelle