ERROR 2006 (HY000) at line xxxx MySQL server has gone away

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Ad Fundum

Ad Fundum

26/08/2020 16:03:23
Quote Anchor link
Dag,

Ik probeer een database backup (+/- 800MB) terug te zetten, maar krijg steeds de foutmelding ERROR 2006 (HY000) at line xxxx MySQL server has gone away.

Het backup-bestand is gemaakt met phpMyAdmin SQL Dump versie 4.8.3, met als database server 10.3.22-MariaDB.
Nu probeer ik het bestand in te laten lezen op 10.3.23-MariaDB, via de CLI client tool

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
mysql -u root -p databasenaam --max_allowed_packet=2GB < backup.sql

Gebruik van de CLI-opties --force, --wait en --reconnect maken geen verschil.
Heeft iemand een idee waar ik nog zou kunnen kijken?

Alvast bedankt.
Gewijzigd op 26/08/2020 16:04:37 door Ad Fundum
 
PHP hulp

PHP hulp

18/01/2021 14:18:50
 
Ozzie PHP

Ozzie PHP

26/08/2020 16:32:19
Quote Anchor link
Dit al geprobeerd?

https://serverfault.com/questions/6354/mysql-server-has-gone-away-when-attempting-to-import-a-large-dump-file

>>

So, in short, what you should try to do is locate and edit the my.cnf file your server is currently using. In the [mysqld] section alter the max_allowed_packet settings to something like

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
[mysqld]
max_allowed_packet=32M

Don't forget to restart the server after altering the configuration.
 
Thomas van den Heuvel

Thomas van den Heuvel

26/08/2020 16:50:11
Quote Anchor link
Maar je hoeft dit toch niet op de server aan te passen om deze switch met een tijdelijk aangepaste waarde voor een import te gebruiken? Waar zou deze anders goed voor zijn?

De documentatie laat verder wel een beetje in het midden of shorthands zoals 32M en 2GB ook echt in een command line operatie gebruikt kunnen worden. Je zou het eens met 33554432 (32MB) of 67108864 (64MB) kunnen proberen. Het maximum is ook 1GB, dus mogelijk wordt weer teruggeschakeld naar de default (16MB voor mysql) wanneer je een hogere waarde opgeeft.

Je zou ook een naar diskruimte kunnen kijken, is er genoeg vrije ruimte? En eventueel ook hoe groot je logs zijn, dat was mogelijk ook een oorzaak volgens dit artikel.

Of je past meerdere variabelen op de server aan, wellicht biedt dat meer soelaas.

En zorg dus inderdaad dat je dit onder het [mysqld] kopje doet indien de import via een shell verloopt.
Gewijzigd op 26/08/2020 16:59:17 door Thomas van den Heuvel
 
Ad Fundum

Ad Fundum

26/08/2020 19:22:40
Quote Anchor link
Het is gelukt!

Het was inderdaad de max_allowed_packet instelling, en op de een of andere manier pakte de MariaDB de CLI-parameter niet.
Ook in de configfile (/etc/mysql/my.cgf) pakte MariaDB de instelling niet.
Gelukkig werkte deze nog wel:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
SET GLOBAL max_allowed_packet = 2*1024*1024*1024;

Bedankt voor alle tips!
Gewijzigd op 26/08/2020 19:22:59 door Ad Fundum
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.