Daniel: Große Datenbank kopieren und konvertieren

Aloha Leute,

ich hab mal ne Frage, und zwar möchte ich eine etwas 300 MB große MySQl Datenbank konvertieren.

Hmm wie stelle ich das am Besten an? Naja php und dann das Timeout ausschalten? Das habe ich ausprobiert... aber da brauch das select schon fast eine Stunde. Dann lese ich das ganze auch noch mit mysqlfetcharray() ein und das kann es doch irgendwie nicht sein, oder?

Um es noch etwas klarer auszudrücken... ich will die Datenbank nicht nur kopieren, sondern auch noch ein paar Felder umwandeln und dann in einer anderen Datenbank schreiben.

Ist vielleicht Perl angebrachter? Schneller? Effektiver? Worauf müsste man bei Lösungsmöglichkeiten achten?

  1. Hallo!

    Keiner nen Tipp für mich, oder warum antwortet keiner?

    Bis dann
    Daniel

  2. Hi Daniel,

    ich hab mal ne Frage, und zwar möchte ich eine etwas 300 MB große MySQl Datenbank konvertieren.

    von was nach was?

    Hmm wie stelle ich das am Besten an? Naja php und dann das Timeout ausschalten?

    Welchen Timeout? Du willst das Ganze doch nicht etwa via HTTP ansteuern? Das wäre in der Tat ein Problem.

    Es gibt noch andere Dialogzugänge als HTTP - in Deinem Falle wären Telnet oder SSH passende Kandidaten.

    Um es noch etwas klarer auszudrücken... ich will die Datenbank nicht nur kopieren, sondern auch noch ein paar Felder umwandeln und dann in einer anderen Datenbank schreiben.

    Klingt nach einer Aufgabe für ein Programm. Dieses benötigt aber keinerlei Dialogfähigkeiten. Und dann ist eine Stunde Laufzeit kein Problem mehr, denke ich.

    Ist vielleicht Perl angebrachter? Schneller? Effektiver?

    Nimm das, was Du kannst (auch PHP soll irgendwie über die Kommandozeile aufrufbar sein, habe ich gehört).

    Viele Grüße
          Michael

    --
    T'Pol: I apologize if I acted inappropriately.
    V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.
    (sh:| fo:} ch:] rl:( br:^ n4:( ie:% mo:) va:| de:/ zu:| fl:( ss:) ls:~ js:|)
     => http://www.peter.in-berlin.de/projekte/selfcode/?code=sh%3A|+fo%3A}+ch%3A]+rl%3A(+br%3A^+n4%3A(+ie%3A%25+mo%3A)+va%3A|+de%3A%2F+zu%3A|+fl%3A(+ss%3A)+ls%3A~+js%3A|
    Auch diese Signatur wird an korrekt konfigurierte Browser gzip-komprimiert übertragen.
    1. Hi Michael.

      von was nach was?

      MySql nach MySQL

      Es gibt noch andere Dialogzugänge als HTTP - in Deinem Falle wären Telnet oder SSH passende Kandidaten.

      Jepp vorhanden.

      Klingt nach einer Aufgabe für ein Programm. Dieses benötigt aber keinerlei Dialogfähigkeiten. Und dann ist eine Stunde Laufzeit kein Problem mehr, denke ich.

      Naja ein php-Skript tut es auch, wie ich gemerkt habe... dauert 45 min.. dafür brauch das erste select schon eine halbe stunde.. dann habe ich noch nen Problem, weil datenbankfelder "" einhalten und er leider dann im instert statement probleme macht, weil er keine "" in einer variable haben will... aber da werde ich mir mal was einfallen lassen. Vielleicht weiß ja hier einer eine Lösung. Ich möchte einfach nur den Inhalt der Variable in die Datenbank schreiben...
      also $sql = "insert into table (spalte1, spalte2) values ("$hash['spalte1']", "$hash['spalte2']"";
      Wie bekomme ich es jetzt hin, dass $hash['spalte1'] kein Fehler verursacht, wenn in dem teil ein " drin steht?

      Nimm das, was Du kannst (auch PHP soll irgendwie über die Kommandozeile aufrufbar sein, habe ich gehört).

      Ja php lässt sich auch über Kommandozeile starten und das Problem mit dem Timeout habe ich mit set-time-limit() gelöst.. ist echt super die funktion.

      Dir auf jedenfall schon einmal danke!!

      Bis dann

      Daniel

      1. Schade ist wohl schon zuweit unten...

        1. Hi Daniel,

          Schade ist wohl schon zuweit unten...

          wieso? Ich dachte, Deine Frage ist bereits beantwortet ...

          Viele Grüße
                Michael

          --
          T'Pol: I apologize if I acted inappropriately.
          V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.
          (sh:| fo:} ch:] rl:( br:^ n4:( ie:% mo:) va:| de:/ zu:| fl:( ss:) ls:~ js:|)
           => http://www.peter.in-berlin.de/projekte/selfcode/?code=sh%3A|+fo%3A}+ch%3A]+rl%3A(+br%3A^+n4%3A(+ie%3A%25+mo%3A)+va%3A|+de%3A%2F+zu%3A|+fl%3A(+ss%3A)+ls%3A~+js%3A|
          Auch diese Signatur wird an korrekt konfigurierte Browser gzip-komprimiert übertragen.