Ich möchte eine SQL-Datei von ca. 12 MB importieren. Aber es verursacht Probleme beim Laden. Gibt es eine Möglichkeit, es hochzuladen, ohne die SQL-Datei zu teilen?
Ich möchte eine SQL-Datei von ca. 12 MB importieren. Aber es verursacht Probleme beim Laden. Gibt es eine Möglichkeit, es hochzuladen, ohne die SQL-Datei zu teilen?
Antworten:
Versuchen Sie, es gemäß dem Geschmack Ihres Betriebssystems von der MySQL-Konsole zu importieren.
mysql -u {DB-USER-NAME} -p {DB-NAME} < {db.file.sql path}
oder wenn es sich auf einem Remote-Server befindet, verwenden Sie das Flag -h, um den Host anzugeben.
mysql -u {DB-USER-NAME} -h {MySQL-SERVER-HOST-NAME} -p {DB-NAME} < {db.file.sql path}
mysql
auf Ihrem Server für nur eine Migration. Danke für die Hilfe Jungs! (Außerdem brauchte ich keine Klammern)
3 Dinge, die Sie tun müssen:
in php.ini
Ihrer PHP-Installation (Hinweis: Je nachdem, ob Sie es für CLI, Apache oder Nginx möchten, finden Sie die richtige PHP.ini zum Manipulieren)
post_max_size=500M
upload_max_filesize=500M
memory_limit=900M
oder andere Werte einstellen.
Starten Sie Apache neu / laden Sie es neu, wenn Sie Apache installiert haben, oder php-fpm für nginx, wenn Sie nginx verwenden.
Remote Server?
erhöhen Sie max_execution_time
auch, da das Hochladen der Datei einige Zeit in Anspruch nimmt.
NGINX-Installation?
Sie müssen hinzufügen: client_max_body_size 912M;
in /etc/nginx/nginx.conf
den http{...}
Block
/etc/php/7.1/apache2/php.ini
hat nicht funktioniert
phpinfo()
und überprüfen Sie, ob die Werte korrekt eingestellt wurden und der Server neu gestartet wurde
Bearbeiten Sie die Datei config.inc.php im Verzeichnis phpmyadmin. In meinem Fall befindet es sich bei C:\wamp\apps\phpmyadmin3.2.0.1\config.inc.php
.
Suchen Sie die Zeile mit $cfg['UploadDir']
und aktualisieren Sie sie auf$cfg['UploadDir'] = 'upload';
Erstellen Sie dann ein Verzeichnis mit dem Namen "upload" im Verzeichnis phpmyadmin (für mich unter C:\wamp\apps\phpmyadmin3.2.0.1\upload\
).
Platzieren Sie dann die große SQL-Datei, die Sie importieren möchten, in das neue upload
Verzeichnis. Wenn Sie jetzt in der phpmyadmin-Konsole auf die Datenbank-Importseite gehen, werden Sie ein Dropdown-Geschenk bemerken, das vorher nicht vorhanden war - es enthält alle SQL-Dateien im Upload-Verzeichnis, das Sie gerade erstellt haben. Sie können dies nun auswählen und mit dem Import beginnen.
Wenn Sie WAMP unter Windows nicht verwenden, können Sie dies sicher ohne großen Aufwand an Ihre Umgebung anpassen.
Referenz: http://daipratt.co.uk/importing-large-files-into-mysql-with-phpmyadmin/comment-page-4/
config.default.php
demselben Verzeichnis und verwende phpmyadmin Version 4.6.4
libraries/config.default.php
Lösung für LINUX USERS (mit sudo ausführen)
Erstellen Sie Verzeichnisse zum Hochladen und Speichern:
mkdir /etc/phpmyadmin/upload
mkdir /etc/phpmyadmin/save
chmod a+w /etc/phpmyadmin/upload
chmod a+w /etc/phpmyadmin/save
Bearbeiten Sie dann die Konfigurationsdatei von phpmyadmin:
gedit /etc/phpmyadmin/config.inc.php
Fügen Sie zum Schluss den absoluten Pfad für die Verzeichnisse "Upload" und "Save" hinzu:
$cfg['UploadDir'] = '/etc/phpmyadmin/upload';
$cfg['SaveDir'] = '/etc/phpmyadmin/save';
/etc/phpmyadmin/upload
Legen Sie jetzt einfach Dateien in einem Ordner ab und Sie können sie aus phpmyadmin auswählen.
Ich hoffe das hilft.
File could not be read!
Nachricht, wenn ich im Upload-Formular auf die Schaltfläche " Senden" klicke . In der Mitte der Fehlerbehebung jetzt.
sudo chmod 777 your-filename.sql
Nur eine Zeile und Sie sind fertig (stellen Sie sicher, dass der Befehl mysql als global verfügbar ist, oder gehen Sie einfach zum Installationsordner von mysql und geben Sie ihn in den Ordner bin ein).
mysql -u database_user_name -p -D database_name < complete_file_path_with_file_name_and_extension
Hier
u
steht für Userp
steht für PasswortD
steht für Datenbank--- VERGESSEN SIE NICHT, <
NACH DEM DATENBANKNAMEN EIN ZEICHEN HINZUZUFÜGEN ---
Ein vollständiger Dateipfad mit Name und Erweiterung kann wie folgt aussehen
c:\folder_name\"folder name"\sql_file.sql
--- WENN IHR ORDNER UND DATEINAME SPACE ENTHÄLT, ALS SIE MIT DOPPELZITAT BINDEN ---
Tipp und Hinweis: Sie können Ihr Passwort später schreiben -p
, dies wird jedoch nicht empfohlen, da es anderen Personen angezeigt wird, die zu diesem Zeitpunkt Ihren Bildschirm beobachten. Wenn Sie dort nicht schreiben, werden Sie gefragt, wann Sie den Befehl ausführen, indem Sie die Eingabetaste drücken.
Erstellen Sie eine Zip- oder TAR-Datei und laden Sie sie in phpmyadmin hoch.
Ich konnte eine große .sql
Datei importieren, indem ich die folgende Konfiguration in der httpd.conf
Datei hatte:
Alias /phpmyadmin "C:/xampp/phpMyAdmin/"
<Directory "C:/xampp/phpMyAdmin">
AllowOverride AuthConfig
Require all granted
php_admin_value upload_max_filesize 128M
php_admin_value post_max_size 128M
php_admin_value max_execution_time 360
php_admin_value max_input_time 360
</Directory>
Sie müssen die Datei php.ini bearbeiten. Ändern Sie Folgendes upload_max_filesize
post_max_size
, um Ihre Dateigröße anzupassen.
Beim Ausführen wird versucht phpinfo()
, den aktuellen Wert anzuzeigen. Wenn Sie nicht in der Lage sind, die Datei php.ini direkt zu ändern, versuchen Sie es mit ini_set ()
Wenn dies auch keine Option ist, können Sie bigdump ausprobieren.
Ich verstehe nicht, warum niemand den einfachsten Weg erwähnt ... teile einfach die große Datei mit http://www.rusiczki.net/2007/01/24/sql-dump-file-splitter/ und führe sie einfach über mySQL admin aus Die getrennt generierten Dateien beginnen mit der mit Struktur
Dafür müssen Sie die php.ini
Datei bearbeiten . Wenn Sie den Ubuntu-Server verwenden, ist dies der Link. Das Hochladen einer großen Datei in phpMyAdmin kann Ihnen helfen.
Ich bin auf einen Artikel gestoßen und das hat am besten für mich funktioniert
Festplatte »Anwendungen» MAMP »bin» config.inc.php
$cfg[‘UploadDir’]
- er wird folgendermaßen aussehen:$cfg['UploadDir'] = '';
$cfg['UploadDir'] = 'upload';
Erstellen Sie dann in diesem phpmyadmin-Verzeichnis einen neuen Ordner und benennen Sie ihn hoch.
Nehmen Sie die große SQL-Datei, die Sie importieren möchten, und legen Sie sie in diesem neuen Upload-Ordner ab.
Wenn Sie das nächste Mal eine Datenbank in phpMyAdmin importieren, wird ein neues Dropdown-Feld direkt unter dem Standard-Suchbereich in Ihrem Abschnitt "Zu importierende Datei" angezeigt.
Ok, Sie verwenden PHPMyAdmin, aber manchmal ist der beste Weg über das Terminal:
mysql -h localhost -u root -p
(Root und Localhost für Benutzer- und Datenbankspeicherort wechseln)\. /path/to/your/file.sql
Und das ist es. Denken Sie daran, wenn Sie sich auf einem Remote-Server befinden, müssen Sie die SQL-Datei in einen Ordner hochladen.
die Antwort für diejenigen mit Shared Hosting. Verwenden Sie am besten dieses kleine Skript, mit dem ich gerade eine 300-MB-DB-Datei auf meinen Server importiert habe. Das Skript heißt Big Dump.
Bietet ein Skript zum Importieren großer Datenbanken auf ressourcenbeschränkten Servern
Der beste Weg, um eine große Datei hochzuladen, ist nicht phpmyadmin. verursachen, dass phpmyadin zuerst die Datei mit der PHP-Upload-Klasse hochlädt und dann SQL ausführt, was dazu führt, dass die meiste Zeit die Zeit abgelaufen ist.
Der beste Weg ist: Geben Sie den Ordner wamp> bin> mysql> bin ein und schreiben Sie diese Zeile
mysql -u root -p listnames <latestdb.sql hier listnames ist zuerst der Datenbankname. Bitte erstellen Sie die leere Datenbank und die latestdb.sql ist Ihr SQL-Dateiname, in dem Ihre Daten vorhanden sind.
Eine wichtige Sache ist jedoch, ob Ihre Datenbankdatei Unicode-Daten enthält. Sie müssen Ihre Datei "latestdb.sql" und eine Zeile vor jeder Zeile öffnen. Die Zeile lautet:
SET NAMES utf8; Führen Sie dann in Ihrem Befehlsmodus diesen Skriptcode aus
In MAMP können Sie große Dateien laden, indem Sie:
Erstellen eines neuen Ordners in diesem Verzeichnis / MAMP / bin / phpMyAdmin / "Ordnername"
und bearbeiten Sie dann "/MAMP/bin/phpMyAdmin/config.inc.php" Zeile 531:
$cfg['UploadDir']= 'folderName';
Kopieren Sie Ihre SQL- oder CSV-Dateien in diesen Ordner.
Jetzt haben Sie eine weitere Option in "PhpMyAdmin": Wählen Sie aus dem Upload-Verzeichnis des Webservers newFolder /: Sie können Ihre Datei auswählen und importieren.
Sie können jetzt jede Datei laden !!
Ändern Sie Ihre Servereinstellungen, um das Hochladen von Dateien zuzulassen, die größer als 12 MB sind, und es sollte Ihnen gut gehen. Normalerweise sind die Servereinstellungen für das Hochladen von Dateien auf 5 bis 8 MB festgelegt.
Eine Lösung besteht darin, die Befehlszeile zu verwenden.
mysql -h yourhostname -u username -p databasename < yoursqlfile.sql
Stellen Sie einfach sicher, dass der Pfad zur zu importierenden SQL- Datei explizit angegeben ist.
In meinem Fall habe ich das benutzt;
mysql -h localhost -u root -p databasename < /home/ejalee/dumps/mysqlfile.sql
Voila! Du bist startklar.
Ich habe ein PHP-Skript erstellt, mit dem große Datenbank-Dumps importiert werden können, die von phpmyadmin generiert wurden. Es heißt PETMI und kann hier heruntergeladen werden [Projektseite] [Gitlab-Seite] . Es wurde mit einer 1 GB Datenbank getestet.
mysql workbench
odermysql Yog