Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

MySQL Grösse eines Textfeldes

Frage Entwicklung Datenbanken

Mitglied: ChrisFah

ChrisFah (Level 1) - Jetzt verbinden

10.08.2014 um 18:52 Uhr, 1106 Aufrufe, 1 Kommentar, 1 Danke

Hallo,
leider habe ich wieder ein Mysql Datenbank Problem:

Ich habe ein grosses Array mit mehreren tausend Textbausteinen. Dieses soll in der Datenbank gespeichert werden. Dazu wird das Array serialisiert (in PHP serialize()) und dann natürlich für die DB noch escaped.
Die Grösse dieser Daten können dabei durchaus bis zu 5000 KB betragen. Daher habe ich das Textfeld zuerst auf Mediumtext und dann auf Longtext gesetzt.
Leider verabschiedet sich der MySQL Server (derzeit noch auf XAMPP) mit folgender Fehlermeldung:

Warning: mysql_query(): MySQL server has gone away in D:\xampp\htdocs\.....
Warning: mysql_query(): Error reading result set's header in D:\xampp\htdocs\....
[MYSQL ERROR] 2006 - MySQL server has gone away

Ich konnte mit etwas Experimentieren herausfinden, daß der Fehler auftritt, sobald die gespeicherten Daten eine Grösse von 1.024KB übersteigen. Dabei sollte doch Mediumtext bis 16MB und Longtext bis 4 GB reichen.

Wer kann mir da weiterhelfen?

Danke im voraus,
Chris
Mitglied: ChrisFah
10.08.2014 um 19:37 Uhr
Habe die Lösung gefunden:

Es war die max_allowed_packet Size, die die Abstürze verursacht hat.
Lösung:
Vor der eigentlichen "grossen" query kommt eine query, die die maximale Paketgrösse erhöht. Je nach Grösse der Daten habe ich das so gelöst:

PHP: $query = 'SET @@global.max_allowed_packet = '.(strlen($into) + 1024);

Das + 1024 ist nötig, da nur ein Vielfaches von 1024 erlaubt ist, sonst wird abgerundet. Und mit der Datengrösse + 1024 ist man auf der sicheren Seite.

Lg, Chris
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Apache Server
gelöst Fehler beim Import einer DB vom anderen MySQL-Server (2)

Frage von zeroblue2005 zum Thema Apache Server ...

Datenbanken
Tool oder Dienst für E-Mail (POP3) zu MySQL Datenbank (3)

Frage von bounee zum Thema Datenbanken ...

Datenbanken
Unvollständiger mysql dump (7)

Frage von AS-N00 zum Thema Datenbanken ...

Heiß diskutierte Inhalte
Zusammenarbeit
Als Administrator im Großraumbüro (29)

Frage von Dopamin85 zum Thema Zusammenarbeit ...

Exchange Server
gelöst Test-ActiveSyncConnectivity Error nach neuem Zertifikat (22)

Frage von Driphex zum Thema Exchange Server ...

Hardware
Laptop ins Salzwasser gefallen (18)

Frage von Marcel94 zum Thema Hardware ...

Hardware
Lenovo Yoga 500 über angeschlossene USB Tastatur booten (13)

Frage von thomasreischer zum Thema Hardware ...