Textdatei(en) von Musikdatenbank in mysql-Datenbank schreiben
Hallo!
Ich möchte langsam wieder einmal meine Musikdatenbank updaten - um immer wieder mal zu schauen, ob Album xy schon auf Festplatte xy vorhanden ist bzw. was noch fehlt etc. Es ist zwar schon eine Musikdatenbank vorhanden - aber die Suche dauert eindeutig zu lange.
Momentanes Schema: Zugriff per Browser auf search.***.de ist realisiert. Alle Daten liegen in Form von *.txt-Files auf dem Server. Es existiert ein PHP-Sucheskript, welches nach Eingabe von Begriff xy (z.B. steve roach) alle Zeilen nacheinander mit (in diesem Fall) "steve roach" ausspuckt. Momentan geschieht das jedoch NICHT über mysql. Die Textdateien werden direkt auf dem Server durchsucht. Das dauert viel zu lange, da es viele Textdateien sind, die außerdem noch sehr groß sind.
Zukünftig soll es andersd werden: Jede Textdatei soll mit phpmyadmin in die mysql-Datenbank geschrieben werden - jede Textdatei soll eine eigene Tabelle bekommen. Z.B.: hdd-1.txt > Tabelle "hdd-1", um diese bei Bedarf zu updaten. Was das Suche-Skript angeht, werde ich eine Lösung mit Codeschnippseln finden. Bei mir scheitert es jedoch am Hochladen der Datensätze in die Datenbank via phpmyadmin selbst. Es sind große Textdateien zwischen 10mb und 20mb - immer mit nur einem Datensatz pro Zeile.
Beispiel (Auszug) einer Textdatei:
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1991 - Rain Tree Crow
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1991 - Rain Tree Crow/01 Big Wheels in Shanty Town.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1991 - Rain Tree Crow/02 Every Colour You Are.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1991 - Rain Tree Crow/03 Rain Tree Crow.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1991 - Rain Tree Crow/04 Red Earth (As Summertime Ends).flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1991 - Rain Tree Crow/05 Pocket Full of Change.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1991 - Rain Tree Crow/06 Boat's for Burning.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1991 - Rain Tree Crow/07 New Moon at Red Deer Wallow.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1991 - Rain Tree Crow/08 Blackwater.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1991 - Rain Tree Crow/09 A Reassuringly Dull Sunday.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1991 - Rain Tree Crow/10 Blackcrow Hits Shoe Shine City.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1991 - Rain Tree Crow/11 Scratchings on the Bible Belt.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1991 - Rain Tree Crow/12 Cries and Whispers.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1991 - Rain Tree Crow/13 I Drink to Forget.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1993 - Darshan
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1993 - Darshan/1 Darshan (The Road to Graceland) (translucent remix by The Grid).flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1993 - Darshan/2 Darshana.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1993 - Darshan/3 Darshan (The Road To Graceland).flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1993 - The First Day
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1993 - The First Day/01 - God's Monkey.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1993 - The First Day/02 - Jean The Birdman.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1993 - The First Day/03 - Firepower.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1993 - The First Day/04 - Brightness Falls.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1993 - The First Day/05 - 20th Century Dreaming (A Shaman's Song).flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1993 - The First Day/06 - Darshan (The Road To Graceland).flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1993 - The First Day/07 - Bringing Down The Light.flac
Die Frage ist nun, was muss ich in phpmyadmin eingeben, damit der ganze Spaß in die Datenbank geschrieben wird?
Ich möchte langsam wieder einmal meine Musikdatenbank updaten - um immer wieder mal zu schauen, ob Album xy schon auf Festplatte xy vorhanden ist bzw. was noch fehlt etc. Es ist zwar schon eine Musikdatenbank vorhanden - aber die Suche dauert eindeutig zu lange.
Momentanes Schema: Zugriff per Browser auf search.***.de ist realisiert. Alle Daten liegen in Form von *.txt-Files auf dem Server. Es existiert ein PHP-Sucheskript, welches nach Eingabe von Begriff xy (z.B. steve roach) alle Zeilen nacheinander mit (in diesem Fall) "steve roach" ausspuckt. Momentan geschieht das jedoch NICHT über mysql. Die Textdateien werden direkt auf dem Server durchsucht. Das dauert viel zu lange, da es viele Textdateien sind, die außerdem noch sehr groß sind.
Zukünftig soll es andersd werden: Jede Textdatei soll mit phpmyadmin in die mysql-Datenbank geschrieben werden - jede Textdatei soll eine eigene Tabelle bekommen. Z.B.: hdd-1.txt > Tabelle "hdd-1", um diese bei Bedarf zu updaten. Was das Suche-Skript angeht, werde ich eine Lösung mit Codeschnippseln finden. Bei mir scheitert es jedoch am Hochladen der Datensätze in die Datenbank via phpmyadmin selbst. Es sind große Textdateien zwischen 10mb und 20mb - immer mit nur einem Datensatz pro Zeile.
Beispiel (Auszug) einer Textdatei:
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1991 - Rain Tree Crow
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1991 - Rain Tree Crow/01 Big Wheels in Shanty Town.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1991 - Rain Tree Crow/02 Every Colour You Are.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1991 - Rain Tree Crow/03 Rain Tree Crow.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1991 - Rain Tree Crow/04 Red Earth (As Summertime Ends).flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1991 - Rain Tree Crow/05 Pocket Full of Change.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1991 - Rain Tree Crow/06 Boat's for Burning.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1991 - Rain Tree Crow/07 New Moon at Red Deer Wallow.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1991 - Rain Tree Crow/08 Blackwater.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1991 - Rain Tree Crow/09 A Reassuringly Dull Sunday.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1991 - Rain Tree Crow/10 Blackcrow Hits Shoe Shine City.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1991 - Rain Tree Crow/11 Scratchings on the Bible Belt.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1991 - Rain Tree Crow/12 Cries and Whispers.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1991 - Rain Tree Crow/13 I Drink to Forget.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1993 - Darshan
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1993 - Darshan/1 Darshan (The Road to Graceland) (translucent remix by The Grid).flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1993 - Darshan/2 Darshana.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1993 - Darshan/3 Darshan (The Road To Graceland).flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1993 - The First Day
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1993 - The First Day/01 - God's Monkey.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1993 - The First Day/02 - Jean The Birdman.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1993 - The First Day/03 - Firepower.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1993 - The First Day/04 - Brightness Falls.flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1993 - The First Day/05 - 20th Century Dreaming (A Shaman's Song).flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1993 - The First Day/06 - Darshan (The Road To Graceland).flac
/Volumes/hdd-1/Downloads-FLAC/David Sylvian/1993 - The First Day/07 - Bringing Down The Light.flac
Die Frage ist nun, was muss ich in phpmyadmin eingeben, damit der ganze Spaß in die Datenbank geschrieben wird?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-Key: 245862
Url: https://administrator.de/contentid/245862
Ausgedruckt am: 19.03.2024 um 07:03 Uhr
8 Kommentare
Neuester Kommentar
Hallo,
Wo die ganzen MP3s herkommen muss man jetzt nicht fragen.
Wie jetzt schon @mrtux angedeutet hat. Solltest du dich erst mal etwas besser mit Datenbanken befassen. Und dir auch mal ein vernünftiges design einfallen lassen.
Das mit den verschiedenen Tabellen ist meiner Meinung nach schon Blödsinn.
Und wenn du schon Bilder verwenden willst dann nutz bitte die Interne Bildupload Funktion.
Wo die ganzen MP3s herkommen muss man jetzt nicht fragen.
Wie jetzt schon @mrtux angedeutet hat. Solltest du dich erst mal etwas besser mit Datenbanken befassen. Und dir auch mal ein vernünftiges design einfallen lassen.
Das mit den verschiedenen Tabellen ist meiner Meinung nach schon Blödsinn.
Und wenn du schon Bilder verwenden willst dann nutz bitte die Interne Bildupload Funktion.
Zitat von @fandangoo:
FLACs, nicht MP3s. Eigen-Rips, also wo ist das Problem? Abgesehen davon, ist es nicht das Thema hier.
Haarspalterei. Eigen-Rips und als Verzeichnis Download-FLACS. Ja klar, halt andere nicht für blöd. Aber egal.FLACs, nicht MP3s. Eigen-Rips, also wo ist das Problem? Abgesehen davon, ist es nicht das Thema hier.
Design ist zweitrangig.
Eben nicht wenn du eine Performante suche verwirklichen willst.
Verschiedene Tabellen deswegen, weil ich die Festplatteninhalte jeweils in Textdateien ausgelesen habe: hdd-1.txt, hdd-2.txt etc.
- Sicher kann man das auch anders lösen. Da ich die Festplattendaten aber ab und an ändere, wollte ich an den CSVs nicht
mehr rumfummeln, sondern gleich in die Datenbank einpflegen. Ein Feld - mehr nicht.
Du hättest nicht rumfummeln müssen. Anders lösen währe vernünftig lösen gewesen.- Sicher kann man das auch anders lösen. Da ich die Festplattendaten aber ab und an ändere, wollte ich an den CSVs nicht
mehr rumfummeln, sondern gleich in die Datenbank einpflegen. Ein Feld - mehr nicht.
Wie schon mein Kollege erwähnt hat. Den Sinn einer Datenbank hast du anscheinend nicht verstanden.
Hi,
ich bin kein Profi was Datenbanken angeht. Aber als Vorschlag für ein besseres Design, solltest du eine Tabelle "Interpreten" und eine "Lieder/Tracks" erstellen. Mit "Zwischen-Tabellen" stellst du dann die Verbindung her (n - m Beziehung). In dieser "Zwischen-Tabelle" erstellst du dann ein weiteres Attribut mit "Speicherort".
Wäre jetzt mein schnellschuß an Beispiel.
Viele Grüße
Xearo
ich bin kein Profi was Datenbanken angeht. Aber als Vorschlag für ein besseres Design, solltest du eine Tabelle "Interpreten" und eine "Lieder/Tracks" erstellen. Mit "Zwischen-Tabellen" stellst du dann die Verbindung her (n - m Beziehung). In dieser "Zwischen-Tabelle" erstellst du dann ein weiteres Attribut mit "Speicherort".
Wäre jetzt mein schnellschuß an Beispiel.
Viele Grüße
Xearo
Hat sich dein Problem mit dem Zeichensatz mitlerweile geklärt?
Wenn nicht, kannst du mal schauen was du bekommst, wenn du folgendes SQL Statement abschickst:
SHOW CHARACTER SET;
Bei dem Ergebnis müsstest du dann mal prüfen, ob der Zeichensatz mit kyrillischen Schriftzeichen kompatibel ist.
Wenn nicht, kannst du mal schauen was du bekommst, wenn du folgendes SQL Statement abschickst:
SHOW CHARACTER SET;
Bei dem Ergebnis müsstest du dann mal prüfen, ob der Zeichensatz mit kyrillischen Schriftzeichen kompatibel ist.