Wie lange sollte eine 20GB restore-nehmen in MySQL? (A. k.ein. Ist etwas kaputt?)
Ich versuche zu bauen, ein dev Kopie der Produktions-Datenbank MySQL durch das laden eines backups. Wie lange sollte es dauern, um dies zu tun, wenn die unkomprimierten dump ~20G?
Dieser Befehl ausgeführt wurde, so etwas wie 24h mit 10% CPU-Last und ich Frage mich, wenn es nur langsam ist, oder wenn es/mache ich etwas falsch.
mysql -u root -p < it_mysql_dump.sql
BTW es ist auf eine bullige desktop-dev-Maschine mit viel ram, aber es könnte sein, das Lesen und schreiben der gleichen HDD. Ich denke, ich bin mit InnoDB.
- Wie viel RAM, was ist mit details auf die Festplatte(N)? IO ist das Problem
- Ist das ein pentium 2 mit 256 mb ram?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wiederherstellen von MySQL-dumps kann eine lange Zeit dauern. Dies ist, weil es nicht wirklich neu erstellen die gesamte Tabellen.
Genau das, was Sie tun müssen, um es zu beheben, hängt von der engine, aber im Allgemeinen
Ich würde sagen, tun Sie den folgenden:
Nullte Regel: verwenden Sie Nur ein 64-bit OS.
Wenn Sie jetzt immer noch finden, dass es langsam ist Sie oben, kann es sein, dass für Ihre Datenbank eine sehr heikle Struktur wiederherstellen.
Persönlich habe ich es geschafft, den Wiederaufbau ein server mit ~ 2Tb in < 48 Stunden, aber das war ein Einzelfall.
Sicher sein, dass Sie Ihr Entwicklungs-system verfügt über Produktions-grade hardware, wenn Sie beabsichtigen, laden, Produktion von Daten in es.
Insbesondere, wenn Sie denken, dass Sie können bulk-laden von Daten in Tabellen, die nicht passen in den Speicher (oder zumindest meist in den Speicher), vergiss es.
Wenn dies scheint wie zu viel, denken Sie daran, dass Sie lediglich ein Dateisystem oder LVM-snapshot online mit InnoDB, und dann einfach die Dateien kopieren. Mit MyISAM-es ist ein bisschen schwieriger, aber noch möglich ist.
Öffnen Sie ein weiteres terminal, laufen mysql, und zählen Sie die Zeilen in einigen der Tabellen in Ihrem dump (
SELECT COUNT(*) FROM table
). Vergleichen, um die source-Datenbank. Das wird Ihnen sagen, der Fortschritt.Ich Eingefügt über 80 GB an Daten in MySQL über ein Netzwerk in rund 14 Stunden. Sie waren ein insert-pro-Zeile-dumps (langsam) mit ein bisschen overhead, einlegen auf einem server mit schnellen Festplatten.
24 Stunden ist möglich, wenn die hardware alt genug ist, oder Ihre Einfuhr wird im Wettbewerb mit etwas anderes für die Datenträger-E /a und Speicher.
Ich ging gerade durch die Erfahrung der Wiederherstellung einer 51.8 Gb-Datenbank aus einer 36.8 Gb mysqldump-Datei zum erstellen einer imdb-Datenbank. Für mich ist das wiederherstellen, was nicht getan wurde, über das Netzwerk aber getan wurde, aus einer Datei auf der nativen Maschine dauerte ein wenig unter 4 Stunden.
Die Maschine ist ein Quad-Core Server mit Windows Server 2008. Die Leute haben sich gefragt, ob es einen Weg gibt, um die Fortschritte zu überwachen. Es tatsächlich ist. Du kannst dir die Wiederherstellung erstellen der Datenbank-Dateien, indem Sie auf der Programm-Daten-Verzeichnis und finden Sie das MYSQL-Unterverzeichnis und dann finden Sie das Unterverzeichnis mit den Namen Ihrer Datenbank.
Werden die Dateien nach und nach Bauten in das Verzeichnis und kann man Sie aufbauen. Kein kleiner Trost, wenn Sie haben ein Problem der Erzeugung und fragst dich, ob der restore-job aufgehängt ist oder einfach nur eine lange Zeit.