Problem mit Import von Binärdaten

Alles, was MariaDB und MySQL betrifft, kann hier besprochen werden.

Problem mit Import von Binärdaten

Postby sete » 04. August 2003 15:30

Hi,

hab schon in einigen Foren gepostet, aber anscheinend hat niemand das Problem, womit ich mich rumschlage.

Die Situation:

Auf meiner privaten Website können sich meine Freunde hochgeladene Bilder betrachten. Diese Bilder werden per PHP-Upload-Formular in die MySQL-DB auf den Server hochgeladen.

Einen Dump kann ich mittels phpMyAdmin noch machen, das klappt super.

Nur: Der Re-Import funzt net!!!

Hat jemand schon einmal Erfahrungen mit dem Import von Binärdaten (Datentyp: LongBlob) gemacht?
MfG, Sete
sete
 
Posts: 8
Joined: 04. August 2003 15:23

Postby Oswald » 04. August 2003 15:47

Huhu Sete!

Ja, ich hab das schon häufiger gemacht und hatte auch noch nie Probleme mit Dumps die Blobs enthielten.

Was für eine Fehlermeldung bekommst Du denn wenn Du den Dump wieder einspielen möchtest? Und womit versuchst Du es?

Gruß,
Oswald
User avatar
Oswald
Apache Friends
 
Posts: 2718
Joined: 26. December 2002 19:51
Location: Berlin, Germany
Operating System: Linux

Probleme mit Binärdaten-Import

Postby sete » 05. August 2003 08:53

Hallo,

also einen Export mache ich ganz normal über phpMyAdmin.

Das daraus entstehende SQL-Statement beinhaltet in den Spalten, die vom Datentyp LongBlob sind z.B. folgende Zeichen:

(Ausschnitt)

DROP TABLE IF EXISTS bilder;
CREATE TABLE bilder (
bildID int(14) unsigned NOT NULL auto_increment,
datum datetime NOT NULL default '0000-00-00 00:00:00',
beschreibung varchar(255) NOT NULL default '',
kategorie int(11) unsigned NOT NULL default '0',
dateitypvorschau varchar(50) NOT NULL default '',
dateivorschau longblob NOT NULL,
dateityp varchar(50) NOT NULL default '',
datei longblob NOT NULL,
PRIMARY KEY (bildID)
) TYPE=MyISAM;

#
# Daten für Tabelle `bilder`
#

INSERT INTO bilder (bildID, datum, beschreibung, kategorie, dateitypvorschau, dateivorschau, dateityp, datei) VALUES (1,'0000-00-00 00:00:00','Steffen\'s großer Stolz: Sein neuer PC-Schreibtisch',1,'image/gif','GIF89aœ...........

Anstelle der Punkte kommen dann nur noch Steuerzeichen, eben das Bild selbst.

Beim Re-Import mit phpMyAdmin kommt dann folgender Fehler:

"Kein SQL-Befehl!"

Auf der Konsole bringt er mir:

mysql> LOAD DATA LOCAL INFILE './import.sql' INTO TABLE bilder;
Query OK, 195 rows affected (2.13 sec)
Records: 195 Deleted: 0 Skipped: 0 Warnings: 1170

Oder auch so:

C:\xampp\mysql\bin>mysqlimport setehumbus_de_db bilder.txt
setehumbus_de_db.bilder: Records: 195 Deleted: 0 Skipped: 0 Warnings: 1170

Die Tabelle "bilder" ist normalerweise > 10 MByte, doch nach dem Import zeigt mir phpMyAdmin nur knapp 350 KByte.

Was mache ich falsch?
MfG, Sete
sete
 
Posts: 8
Joined: 04. August 2003 15:23

Postby Oswald » 05. August 2003 09:10

Huhu Sete!

Ah.. prima, Du hast Shell-Zugang. Das erleichtert so einiges... ;)

Also: phpMyAdmin kannst Du eigentlich für größere Datenmengen total vergessen.

LOAD DATA ist zum Einlesen von CSV-Dateien und nicht für SQL-Dumps gedacht. mysqlimport dito.

Mach einfach folgendes:

mysql -uroot -pxxx < import.sql

Wobei xxx logischerweise Dein root-Passwort ist.

Das war's.

Liebe Grüße,
Oswald
User avatar
Oswald
Apache Friends
 
Posts: 2718
Joined: 26. December 2002 19:51
Location: Berlin, Germany
Operating System: Linux

Funzt leider net...

Postby sete » 05. August 2003 09:17

Auf der Shell bringt er mir folgendes:

C:\xampp\mysql\bin>mysql -uroot -Dsetehumbus_de_db < bilder.txt
ERROR 1136 at line 34: Column count doesn't match value count at row 1

Ich hab das Gefühl, dass er den Binär-Anteil net lesen kann.

Mit Trennzeichen kann ich aber auch net arbeiten, da im Binäranteil ja alle möglichen Zeichen drinstehen, auch solche, die als Trennzeichen in Frage kommen könnten.

Gibt's beim Import Unterschiede zwischen Linux und Windows?
MfG, Sete
sete
 
Posts: 8
Joined: 04. August 2003 15:23

Postby Oswald » 05. August 2003 09:35

Huhu sete,

kannst Du mir die Datei mal mailen? oswald@outermedia.de

Ich benutze zum dumpen immer mysqldump und nicht phpMyAdmin. Vielleicht ist da der Unterschied?

Linux-Window: Mir ist nicht bekannt das es da Differenzen gibt. Aber so richtig unwahscheinlich ist es natürlich auch nicht. :(

Gruß,
Oswald
User avatar
Oswald
Apache Friends
 
Posts: 2718
Joined: 26. December 2002 19:51
Location: Berlin, Germany
Operating System: Linux

Postby Oswald » 05. August 2003 11:31

Huhu sete!

Danke für's Zusenden des Dumps.

Ja, der Dump funktioniert nicht. :( Ich vermute es liegt wirklich am phpMyAdmin.

Kannst Du mit mysqldump auch mal einen Dump erstellen?

Liebe Grüße,
Oswald
User avatar
Oswald
Apache Friends
 
Posts: 2718
Joined: 26. December 2002 19:51
Location: Berlin, Germany
Operating System: Linux

Import-Prob

Postby sete » 05. August 2003 11:58

Wie genau mach ich das?

In etwa so?

mysqldump -a --add-drop-table -c setehumbus_de_db bilder > c:\bilder.sql

Das Problem ist - auf dem Server, auf dem die Bilder liegen, den kann ich nur per phpMyAdmin ansprechen.

Ich will ja nix anderes machen, als n Backup, das ich später einmal einspielen kann.

Die Website liegt bei einem Lycos, einem Freespace-Provider - dort habe ich natürlich keine Shell, sondern nur phpMyAdmin.
MfG, Sete
sete
 
Posts: 8
Joined: 04. August 2003 15:23

Postby Oswald » 05. August 2003 12:12

Huhu sete!

Ja, der mysqldump ist so prima.

Letztendlich hab ich das schon befürchtet, dass Du keinen Shell-Zugang hast.

Hmm... gibt es bei Deinem Provider Confixx oder son Zeugs. Da hast Du auch ne Backup-Möglichkeit.

Mehr fällt mir im Moment nicht ein. Ich hab schon ein bisschen recherchiert, aber nur Beiträge von Leuten gefunden, die das gleiche Problem wie Du mit phpMyAdmin haben. Die Antworten waren auch immer mysqldump.

Welche phpMyAdmin-Version benutzt Du denn? Vielleicht hilft ja schon ein Upgrade auf eine neuere Version?

Gruß und viel Glück,
Oswald
User avatar
Oswald
Apache Friends
 
Posts: 2718
Joined: 26. December 2002 19:51
Location: Berlin, Germany
Operating System: Linux


Return to MariaDB - MySQL

Who is online

Users browsing this forum: No registered users and 14 guests