Migration SQLite zu MySQL

  • Hallo!


    Das ist jetzt erstmal nur eine rein hypothetische Frage: Wenn ich die LiveConfig Datenbank von SQLite zu MySQL migrieren wollte, wäre dies a) im Produktivbetrieb möglich und b) gibt es bereits einen Mechanismus in LiveConfig der die entsprechenden Datenbankeinträge (Kunden usw.) dann automatisch vornimmt?


    Andernfalls wäre sowas vielleicht ganz interessant.


    Gruß
    Martin

  • "Im Produktivbetrieb" ist relativ... LiveConfig müsste dafür schon beendet werden (schließlich muss ja auch die /etc/liveconfig/liveconfig.conf von SQLite auf MySQL umgestellt werden).


    Eine Anleitung zur Migration werden wir Anfang kommender Woche in die Wissensdatenbank einstellen. Kurz gesagt läuft das so ab:
    * SQL-Dump aus der SQLite-Datenbank erzeugen

    Code
    echo ".dump" | sqlite /var/lib/liveconfig/liveconfig | grep "^INSERT" > daten.sql


    * MySQL-Tabellen anlegen
    * SQLite-Dump in MySQL einspielen


    Wie gesagt - ausführliche Anleitung folgt in Kürze.


    Viele Grüße


    -Klaus Keppler

  • Hallo,


    gibt es die ausführliche Anleitung schon irgendwo ? Ich habe habe Sie leider nicht gefunden.
    Im übrigen wäre der Befehl wohl : echo ".dump" | sqlite3 /var/lib/liveconfig/liveconfig.db | grep "^INSERT" > daten.sql
    Bei meinem letzten Versuch hatte ich ziemlich viele NULL Werte in der Oberfläche :-/

  • [quote='Maikomania','https://forum.liveconfig.com/index.php?thread/&postID=2757#post2757']Ich
    [2012/12/09 15:24:27.541453] [5170|5170] LiveConfig 1.6.1-2083 starting...
    [2012/12/09 15:24:27.541569] [5170|5170] Database driver loaded: SQLite (3.7.13)
    [2012/12/09 15:24:27.552940] [5170|5170] License is valid.
    [2012/12/09 15:24:27.556151] [5172|5172] Server child started...
    [2012/12/09 15:24:27.556240] [5173|5173] Client child started...
    [2012/12/09 15:24:27.632731] [5173|5173] Connected to LiveConfig 1.6.1
    [2012/12/09 15:24:28.260989] [5173|5179] [LUA] Detected 'Debian GNU/Linux 6.0.6 (squeeze)'
    [2012/12/09 15:24:33.901625] [5171|5171] Received SIGTERM, immediately terminating child processes
    [2012/12/09 15:24:33.901749] [5172|5172] Server child terminating... (shutdown=0, exitcode=0)
    [2012/12/09 15:24:33.901949] [5172|5172] LiveConfig terminated.
    [2012/12/09 15:24:33.904398] [5173|5173] Client child terminating... (shutdown=0, exitcode=0)
    [2012/12/09 15:24:33.905039] [5173|5173] LiveConfig terminated.
    [2012/12/09 15:24:33.905153] [5173|5173] Closing log file
    [2012/12/09 15:24:33.906423] [5171|5171] Client child process 5173 terminated; return code: 0
    [2012/12/09 15:24:33.906470] [5171|5171] Resource usage statistics:
    [2012/12/09 15:24:33.906480] [5171|5171] Uptime: 6 sec.
    [2012/12/09 15:24:33.906489] [5171|5171] User time: 0.0432
    [2012/12/09 15:24:33.906499] [5171|5171] System time: 0.0280
    [2012/12/09 15:24:33.961954] [5172|5172] Closing log file
    [2012/12/09 15:24:33.963166] [5171|5171] Server child process 5172 terminated; return code: 0
    [2012/12/09 15:24:33.963203] [5171|5171] Resource usage statistics:
    [2012/12/09 15:24:33.963214] [5171|5171] Uptime: 6 sec.
    [2012/12/09 15:24:33.963224] [5171|5171] User time: 0.0020
    [2012/12/09 15:24:33.963234] [5171|5171] System time: 0.0012
    [2012/12/09 15:24:33.963249] [5171|5171] LiveConfig terminated.
    [2012/12/09 15:24:33.963651] [5171|5171] Closing log file
    [/CODE]


    Wen ich auf SQLlite umstelle steht das in der log bei mysql nur terminated usw

  • Guten Morgen,


    ganz so einfach klappt es mit der Doku doch nicht.


    Fehler 1: TRUNCATE TABLE DNSSETS;
    der Table DNSSETS ist nicht vorhanden in meiner leeren DB aus dem ZIP.


    Folgende Fehler kamen auf mich zu :


    ERROR 1048 (23000) at line 6802: Column 'RES_LOGINLOGO' cannot be null
    ERROR 1048 (23000) at line 9093: Column 'MS_CFG_USE_SA' cannot be null
    ERROR 1048 (23000) at line 21449: Column 'S_FLAGS' cannot be null
    ERROR 1048 (23000) at line 21453: Column 'S_USERTYPE' cannot be null
    ERROR 1048 (23000) at line 21453: Column 'S_RANDOM' cannot be null



    Ich habe die Felder in der DB dann alle mal NULL gesetz.


    Das weiteren hatte ich Schwierigkeiten mit der "E-Mail-Signatur" der INSERT war nicht komplett und es fehlten Teile des Feldinhalts. Ebenso bei SSL Zertifikaten.


    Danach lief der Dump durch. Allerdings waren in den Reseller Einstellungen danach komische Werte (Präfix für Vertragsnummer war eine Zahl etc.) und ich bekam irgendwas mit ungültiger DB Präfix zurück.

  • Na dann warte ich doch besser noch, bis das geklärt ist. :confused:

    Computer sind unglaublich dumme Geräte,
    die unglaublich intelligente Sachen können.
    Programmierer sind unglaublich intelligente Leute,
    die unglaublich dumme Sachen produzieren.
    ("Die Presse", 30.8.1999)

  • Hmm... ich weiss nicht ob das etwas ist das per Klick durchführbar sein sollte.
    Ich wäre damit einverstanden das man bei der erstinstallation von LiveConfig entscheiden kann ob sqlite oder mysql. Darauf baut das System dann zukünftig aus... Wenn man aber irgendwann einmal von z.B. sqlite auf mysql "migrieren" möchte ist es imo besser das ganze manuel zu machen... zumindest nicht so einfach über die gui da hier evtl. etwas schiefgehen könnte und nicht jeder "hoster" ;) könnte dann mit einem etwaigen Problem umgehen. Beim Manuelen thema bleibt das eben besser kontrollierbar.

    - LiveConfig 1.6.0-r2052 (Inaktiv) :: BETA: 1.6.1 - r2142 (Inaktiv)
    [HR][/HR] - CentOS 6.3 x64[HR][/HR]- Apache 2.2.15 - PHP 5.4.12* - mod_suphp 0.7.1** - MySQL 5.5.30*
    - Postfix 2.6.6 - dovecot 2.0.9 - Clamd 0.97.6** - clamav-milter 0.97.6**- postgrey 1.34**
    - vsFTPd 2.2.2 - AWStats 7.0**
    * Aus dem REMI-Repository :: ** Aus dem rpmforge-Repository

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!