[3.3] Großes Forum, MYSQL-Dump kann nicht mehr eingespielt werden

Fragen rund um die Installation, Administration und Benutzung von phpBB.
Forumsregeln
Bitte im Thementitel den Präfix deiner phpBB-Version angeben
rowitech
Mitglied
Beiträge: 42
Registriert: 19.07.2020 15:19

[3.3] Großes Forum, MYSQL-Dump kann nicht mehr eingespielt werden

Beitrag von rowitech »

Liebes Forum,

ich bin am verzweifeln. Mein Forum ist seit über einer Woche down und ich habe langsam keine Ideen mehr. Ich wollte einen SQL-Dump wieder einlesen, aber das Forum ist knapp 3GB groß. Bei meiner MariaDB (MYSQL) hakt es dann irgendwann mit folgender Fehlermeldung:

[ERROR] [FATAL] InnoDB: Semaphore wait has lasted > 600 seconds. We intentionally crash the server because it appears to be hung.

Also habe ich in den letzten gut 10 Tagen viel gegoogled, getweaked, alle möglichen Dinge ausprobiert, auch den SQL-Dump in handliche Stücke von 50 bis 100MB getrimmt und darauf geachtet, das "use forum;", sowie die Table locks / unlocks an den Start/Ende der Stücke gepackt. Nichts hilft.

Nun bin ich so weit, dass ich sehe, dass einzelne Inserts erstaunlich groß sind (1020kB): "INSERT INTO `phpbb_posts` VALUES ...". Hier scheint es auch zu haken. Das Forum hat über 1 Mio Beiträge. Werden hier komplette Threads in einem einzigen Insert reingepumpt?

Server version: 10.3.29-MariaDB-0+deb10u1 Debian 10

Ich habe natürlich weitere Logs und kann alles liefern (bin auf der Shell unterwegs und Linux-affin). Bitte, bitte, wenn Ihr eine Idee habt, helft mir.

Grüße,
Rolf
Benutzeravatar
Crizzo
Administrator
Administrator
Beiträge: 11975
Registriert: 19.05.2005 21:45
Kontaktdaten:

Re: [3.3] Großes Forum, MYSQL-Dump kann nicht mehr eingespielt werden

Beitrag von Crizzo »

Hi,

wie genau spielst du das Dump wieder ein?

Bei uns dauert das Rückspielen z.B. via CLI bei einer ca. 1 GB Datenbank auch ungefähr 20-30min auf dem Server.
rowitech
Mitglied
Beiträge: 42
Registriert: 19.07.2020 15:19

Re: [3.3] Großes Forum, MYSQL-Dump kann nicht mehr eingespielt werden

Beitrag von rowitech »

Ich spiele es mit mysql -u dbadmin -p < dbfile.sql wieder ein.
Das ganze File dauert über 3 Stunden, bis es dann irgendwo abbricht.

In kleinen Files (50-100MB) dauert es eine Stunde oder vielleicht auch mal 30 Min.

Gerade hänge ich an einen Teilstück, bei dem es wohl klemmt. Ich habe die Fehler ignorieren lassen (-f) und auch den Parameter -n versucht. Hier ein Teil, den ich jetzt mehrfach versucht habe. Die INSERTs als ERROR 1062 sind ja wohl ok, da die schon geklappt haben, aber bei Zeile 69 kommt es wiederholt zu diesem Crash. Immer genau dort. Die einzelne Zeile (gut 1MB als einzelner Insert aus dem Dump) scheint auch einzeln nicht zu klappen. Die nächste Zeile übrigens auch nicht, sonst hätte ich den Post (geht ins phpbb_posts) einfach ausgelassen. Da diese Zeile 1 MB groß ist, fällt mir das Debuggen auch schwer.

ERROR 1062 (23000) at line 63: Duplicate entry '2820703' for key 'PRIMARY' // Das ist wohl ok, ist ja schon importiert
ERROR 1062 (23000) at line 64: Duplicate entry '2822503' for key 'PRIMARY'
ERROR 1062 (23000) at line 65: Duplicate entry '2824406' for key 'PRIMARY'
ERROR 1062 (23000) at line 66: Duplicate entry '2826210' for key 'PRIMARY'
ERROR 1062 (23000) at line 67: Duplicate entry '2828092' for key 'PRIMARY'
ERROR 1062 (23000) at line 68: Duplicate entry '2829900' for key 'PRIMARY'
ERROR 2013 (HY000) at line 69: Lost connection to MySQL server during query // Das kommt immer an der gleichen Stelle) mit dem 1MB-Insert
ERROR 2006 (HY000) at line 70: MySQL server has gone away // (ab hier macht es wohl keinen Sinn mehr, weiter zu versuchen)
ERROR 2006 (HY000) at line 71: MySQL server has gone away
ERROR 2006 (HY000) at line 72: MySQL server has gone away
ERROR 2006 (HY000) at line 73: MySQL server has gone away
ERROR 2006 (HY000) at line 74: MySQL server has gone away
ERROR 2006 (HY000) at line 75: MySQL server has gone away
Benutzeravatar
Joyce&Luna
Mitglied
Beiträge: 2471
Registriert: 24.11.2013 18:14
Wohnort: NRW
Kontaktdaten:

Re: [3.3] Großes Forum, MYSQL-Dump kann nicht mehr eingespielt werden

Beitrag von Joyce&Luna »

Ich hatte mal vor Jahren auch das Problem ein großes Backup für ein Forum hoch zu laden.
Mir hat dieses Program sehr geholfen.
Vielleicht hilft es ja.

https://mysql-front.en.softonic.com
phpBB-Style-Design.de

Keine Antwort ist die eindeutigste Antwort, die man kriegen kann.
Bitte stellt die Fragen im Forum und nicht per PN. Danke!
rowitech
Mitglied
Beiträge: 42
Registriert: 19.07.2020 15:19

Re: [3.3] Großes Forum, MYSQL-Dump kann nicht mehr eingespielt werden

Beitrag von rowitech »

Vielen Dank, aber ich mache mir da kaum Hoffnungen. Ich arbeite direkt auf dem Server, sonst würde es überhaupt nicht funktionieren, wenn ich die Daten noch übers Internet schieben müsste.
vfrblue
Ehemaliges Teammitglied
Beiträge: 1996
Registriert: 22.11.2016 18:46

Re: [3.3] Großes Forum, MYSQL-Dump kann nicht mehr eingespielt werden

Beitrag von vfrblue »

Ist das DB-Backup auch mit MySQL erstellt worden, oder mit PHPMyAdmin oder ähnliches?
rowitech
Mitglied
Beiträge: 42
Registriert: 19.07.2020 15:19

Re: [3.3] Großes Forum, MYSQL-Dump kann nicht mehr eingespielt werden

Beitrag von rowitech »

Ist ein klassischer mysqldump auf der Konsole.
Benutzeravatar
Dr.Death
Moderator
Moderator
Beiträge: 17410
Registriert: 23.04.2003 08:22
Wohnort: Xanten
Kontaktdaten:

Re: [3.3] Großes Forum, MYSQL-Dump kann nicht mehr eingespielt werden

Beitrag von Dr.Death »

Mal im mysql error log schauen, warum der mysql Prozess sich verabschiedet

( mysql gone away.... könnte ansonsten auch auf einen Timeout oder max allowed packet hinweisen )

Standard MySQL Config File: (Werte ggf. erhöhen und danach den mysql Prozess neu starten)

/etc/mysql/my.cnf

wait_timeout=60
max_allowed_packet=100M


https://dev.mysql.com/doc/refman/8.0/en/gone-away.html
https://dev.mysql.com/doc/refman/8.0/en ... it_timeout
https://dev.mysql.com/doc/refman/8.0/en ... large.html
vfrblue
Ehemaliges Teammitglied
Beiträge: 1996
Registriert: 22.11.2016 18:46

Re: [3.3] Großes Forum, MYSQL-Dump kann nicht mehr eingespielt werden

Beitrag von vfrblue »

Was eventuell auch helfen kann:
Alle unnötigen Kommentare am Anfang und am Ende des Dumps entfernen.
use "Datenbankname" am Anfang (Kopf) des Dumps einfügen.

Jedenfalls haben diese Maßnahmen bei mir immer zum erfolgreichen Restore der Datenbank geführt.

Zum Editieren großer Dateien nutze ich unter Windows Pilot Edit (Lite).
rowitech
Mitglied
Beiträge: 42
Registriert: 19.07.2020 15:19

Re: [3.3] Großes Forum, MYSQL-Dump kann nicht mehr eingespielt werden

Beitrag von rowitech »

[ERROR] [FATAL] InnoDB: Semaphore wait has lasted > 600 seconds. We intentionally crash the server because it appears to be hung.

Das zeigt mir, dass es ein bewusstes Abschiessen des mysqld ist, weil eine "Semaphore" zu lange warten musste (was auch immer das ist und warum auch immer dann die DB abgeschossen werden muss). Ich habe bewusst alles andere ausgeschaltet, keinen Apache oben, nichts. Also kann es eigentlich nichts anderes sein, was auf die DB zugreift. Auf das Forum ohnehin nicht.

Ich hänge den INNODB-Status mal an, vielleicht kann jemand da mehr rauslesen, woran es liegen könnte.

Gerade habe ich nochmal eine mit Debian mitgelieferte "Standard my.cnf" genutzt, aber auch mit diesen Standardwerten ist nichts zu machen, also habe ich die DB wohl auch nicht durch die vielen Versuche "verkonfiguriert" (könnte ja alles sein).

Grüße,
Rolf :cry:
Zuletzt geändert von rowitech am 20.08.2021 18:10, insgesamt 1-mal geändert.
Antworten

Zurück zu „Support-Forum“