Ich möchte eine Test-System installieren und dabei die produktive Datenbank als Kopie übernehmen

This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

  • Ich möchte eine Test-System installieren und dabei die produktive Datenbank als Kopie übernehmen

    Ich möchte eine Test-System installieren und dabei die produktive Datenbank als Kopie übernehmen. Muss ich auf etwas spezielles achten?
    Diese Support-Frage wurde per E-Mail gestellt und wird zwecks Dokumentation im Support-Forum für alle Anwender beantwortet.
  • Einleitung
    Möchte man einen 1:1 Kopie der produktiven Datenbank in ein Test-System übernehmen, gibt es ein paar wichtige Punkte zu beachten:

    Synchronisations-Konten
    delight Programme können mit unterschiedlichen Systeme Daten synchronisieren. Diese Synchronisationskonten sind in der Datenbank hinterlegt und müssen im Test-System deaktiviert werden, andernfalls kann es zu Problemen und Datenverlust im Zusammenhang mit der Synchronisation kommen!

    Automatisierte Aufgaben
    delight Programme können Aufgaben automatisiert bzw. periodisch gestartet werden. Dies können z. B. WorkFlows, Hintergrundaufgaben, Import-Jobs, Export-Jobs und andere Dinge sein. In der Regel sollten solche Dinge ebenfalls deaktiviert werden.

    E-Mail Konten
    Wenn Sie das Test-System zum hemmungslosen testen von neuen Dingen benötigen, macht es in der Regel Sinn, die E-Mail-Konten zu deaktivieren. So stellen Sie sicher, dass nicht aus versehen E-Mails aus dem Test-System (z. B. an "echte" Kunden) versendet werden.

    WorkFlows
    Falls die WorkFlow-Erweiterung installiert ist, können aktive WorkFlows in der Datenbank vorhanden sein. In der Regel macht es Sinn, diese alle zu deaktivieren. Ansonsten würden die WorkFlows auf dem Test-System weiter ausgeführt werden so dass es zur Doppelausführung kommt. Dies kann je nach Art des WorkFlows zu ernsthaften Problemen und Datenverlust führen!


    Vorgehen
    Der hier beschriebene Vorgehen verwendet HeidiSQL, es kann jedoch jedes andere DB-Admin Tool (MySQL Workbench, SQLyog, Navicat...) verwendet werden. Wichtig ist, dass sinngemäss die selben Optionen verwendet werden.
    1. Vor dem Import der Datenbank muss der delight Dienst (des Test-System in welches Sie die Datenbank importieren werden) beendet werden
    2. Alle Clients des Test-Systems müssen ebenfalls beendet werden

    3. Exportieren Sie die produktive Datenbank in einen SQL-Dump (*.sql Datei)

      Wählen Sie beim Export folgende Optionen:



    4. Importieren Sie den SQL-Dump in die Datenbank des Test-Systems (z. B. "delight_testing").

      Anmerkung
      : Wenn Sie wie bei HeidiSQL beim Import die Zieldatenbank nicht wählen können, müssen Sie den DB-Namen vor dem Import (im gerade erstellen SQL-Dump) ändern.

      Sollten Sie kein Tool dazu haben, können Sie unseren DumpDBChanger verwenden: delight.ch/mysql-dump-db-changer/

    5. Wählen Sie die gerade importierte Datenbank in Ihrem Datenbank-Admin Tool (HeidiSQL) und führen Sie die unten angefügten SQL-Queries auf der gerade importierten Test-System-DB aus.

      Damit werden folgende Dinge in der Datenbank deaktiviert:
      - E-Mail-Konten werden mit "dummy-Daten" überschrieben damit sie nicht mehr funktionieren
      - Die Hintergrundsynchronisation auf allen Synchronisationskonten wird deaktiviert
      - Alle delight everywhere Konten werden deaktiviert
      - Alle Hintergrundaufgaben werden deaktiviert
      - nur Produkt "delight insurance": Alle Elextronic Broker Xchange Konten werden deaktiviert
      - nur mit "WorkFlow-Modul": Alle aktiven WorkFlows werden zwangsbeendet

    6. Führen Sie nun "ML2Client.exe SYNCDB" aus
    7. Danach kann der delight Dienst der Test-System Installation wieder gestartet werden


    SQL-Query

    1. UPDATE crm_emailproviders
    2. SET
    3. providerusername = 'test',
    4. providerpassword = '1234',
    5. servername = '127.0.0.1';
    6. UPDATE sync_clientaccounts SET bgsenabled = 0;
    7. UPDATE delightcloud_accounts SET isactive = 0;
    8. UPDATE sched_tasks SET schedstate = 2;
    Display All


    Für Produkt delight insurance zusätzlich:

    SQL-Query

    1. UPDATE ebx_accounts SET isenabled = 0;

    Für die WorkFlow-Erweiterung zusätzlich:

    SQL-Query

    1. UPDATE workflow_tasks SET killdate = NOW(), finishdate=NOW(), finishconditionstate='FAILED'
    Schöne Grüsse
    Elias Zurschmiede

    delight software gmbh