Große Datenbanken in MySQL importieren mit BigDump

Der Import von Datenbankdateien oder Dumps in eine MySQL Datenbank ist nicht unbedingt problematisch.

mysql.exe -u USERNAME -p PASSWORD DATABASENAME < MYDATABASE.sql


Ohne Shell Zugriff muss das anders laufen.
MySQL wird eigentlich immer mit einer Adminoberfläche installiert, in den meisten Fällen phpMyAdmin. phpMyAdmin ist aber oftmals an verschiedenste Limitierungen gebunden und generell gibt es viele Gründe, warum ein Datenbankimport scheitern kann: PHP Dateigrößen-Limit, phpMyAdmin Dateigrößen-Limit, Timeouts vom Server oder vom Client, sowas.
große-datenbanken-importieren-bigdump-phpmyadmin-limit
8MB Maximum? Nicht besonders viel.

Per FTP Zugriff, je nachdem wie eingeschränkt der Zugriffsbereich ist, können diese Probleme aber umgangen werden.
Server Vollzugriff:
Entweder könnt ihr auf die php.ini des Servers zugreifen und dort ein paar Einschränkungen lockern um den Import anschließend über die phpMyAdmin Oberfläche erneut probieren:

php_value upload_max_filesize 120M //file size
php_value post_max_size 120M
php_value max_execution_time 200
php_value max_input_time 200

Eingeschränkter Zugriff (shared hoster):
Häufig ist der Zugriff jedoch auf den html/public Bereich beschränkt, hier geht ihr folgendermaßen vor:
Wenn ihr von dem Hoster bereits eine leere Datenbank und einen User bekommen habt, was in den meisten Fällen so passiert, überspringt ihr den folgenden Satz einfach. Falls nicht erstellt ihr euch über die phpMyAdmin Oberfläche eine neue leere Datenbank und einen Datenbanknutzer, der auf diese Datenbank Vollzugriff/All Privileges hat.
Anschließend zieht ihr euch das nützliche Tool BigDump. Das ist im Endeffekt nur eine .php Datei.
Die öffnet ihr mit einem Editor und füllt die paar Zeilen aus: Server (bei shared so gut wie immer localhost), Datenbankname, Username, Userpasswort und der Dateiname der zu importierenden Datei. Die Kodierung ist meistens utf8 bei SQL Exports, passt das falls nötig auch noch an.
große-datenbanken-importieren-bigdump-config

Dann müsst ihr diese Datei zusammen mit dem Datenbankbackup auf den Server laden, am besten einfach in das Root html Verzeichnis. Im Anschluss die .php Datei im Browser aufrufen und mit „Start Import“ geht’s los. Eine 30MB SQL Datei wurde bei mir in etwa 1 Sekunde importiert.
große-datenbanken-importieren-bigdump-process-startgroße-datenbanken-importieren-bigdump-process-finished

Erledigt. Nicht vergessen danach die 2 Dateien wieder vom Server zu löschen.

Es gibt bestimmt noch andere Tools, die diesen Job erledigen. Solltet ihr jedoch Probleme mit diesen Workarounds haben, fragt doch vielleicht einfach mal euren Hoster, ob er nicht den Import übernehmen kann. Vorher die Backup Datei auf den Server laden, die meisten Hoster sind da hilfsbereit und machen das sogar kostenlos.

Quellen:via, via

1 Kommentar

Schreibe einen Kommentar