Neu JTL Shop 4.04 auf 4.06 > Wie kann man ein Update auf einem Entwicklungs-Server testen?

Ralf Römling

Aktives Mitglied
30. Januar 2019
62
7
Hallo Zusammen,
ich bin gerade in der Vorbereitung einen angepassten JTL Shop 4.04 auf 4.06 upzudaten.

Da ich den Anpassungen nicht selbst gemacht habe, würde ich das ganze gerne vorab auf einem Entwicklungsserver testen. Gibt es dafür evt. ein HowTo bzw. ein Best-Practice-Dokument?

Da ich den Datenabgleich und WaWi noch nicht geblickt habe, hätte ich die Befürchtung ein Datenkuddelmuddel zu verursachen, wenn sich evt. beide Shops mit der WaWi verbinden. Ist die Angst berechtigt?

Mein geplantes Vorgehen wäre derzeit:
- Shop in Wartungsmodus stellen
- Datei-Backup erstellen
- Datenbank mit phpmyadmin exportieren
- Alles auf der Testumgebung wieder einspielen.

Was wäre danach noch zu tun bzgl. URL-Anpassungen im System, htacces, o.ä.?

Danke schon mal vorab für Eure Hilfe :)

Viele Grüße,
Ralf
 

Tomas

Sehr aktives Mitglied
8. Januar 2018
330
70
Lübeck
Hallo Ralf,

ich kann hierbei nur für mich sprechen, da vermutlich jeder so seine eigene Arbeitsweise hat.

Wir haben neben unserer Produktiven Wawi eine Entwicklungs bzw. Test Wawi lokal auf meinem Entwicklungsrechner.
Dafür habe ich einfach eine JTL-Neuinstallation auf dem Rechner ausgeführt und ein Backup der Produktiv-Datenbank eingespielt.
Man muss aber alle kritischen Verbindungen entfernen. EazyAuction, die Verbindung zum Live- Shop und die E-Mail Adressen, damit beim testen nicht versehentlich irgendwas raus geht.

Der Vorteil bei einer Wawi für die Entwicklung sind meiner Meinung nach:
- dass du keine Multishop Lizenz brauchst, falls du nur einen Shop betreibst. https://www.jtl-software.de/jtl-store/erweiterungen/multishop-jahreslizenz
- dass du dir keine Sorgen beim Testen machen brauchst
- dass du dir deine Produktiv-Datenbank nicht zumüllst mit irgendwelchen Test-Aufträgen etc.

Was den Shop an sich angeht würde ich eine saubere Neuinstallation machen und nicht einfach die DB kopieren.
Dann mit dem JTL-Backup-Plugin alle Einstellungen in den neuen Shop portieren. https://guide.jtl-software.de/jtl-shop/shop-erweitern/jtl-backup-plugin/
Du kannst dann die Test-Wawi mit dem Test-Shop verbinden und los testen was das Zeug hält, ohne dass deine Produktive Umgebung in irgendeinem Zusammenhang steht.

VG
Tomas
 

FPrüfer

Moderator
Mitarbeiter
19. Februar 2016
1.881
529
Halle
Was den Shop an sich angeht würde ich eine saubere Neuinstallation machen und nicht einfach die DB kopieren.
Dann mit dem JTL-Backup-Plugin alle Einstellungen in den neuen Shop portieren. https://guide.jtl-software.de/jtl-shop/shop-erweitern/jtl-backup-plugin/
Du kannst dann die Test-Wawi mit dem Test-Shop verbinden und los testen was das Zeug hält, ohne dass deine Produktive Umgebung in irgendeinem Zusammenhang steht.
Die Testszenarien und damit auch das Vorgehen unterscheiden sich jedoch, ob ich grundsätzlich ein Testsystem für Eigenentwicklungen einrichten, oder ob ich den Updatevorgang selbst testen möchte. Für Letzteres ist das kopieren der Shop-DB schon richtig, da das bei einem Update auch passieren würde bzw. dort ja die bestehende DB verwendet wird. Für diesen Test kann man die Anbindung an die Wawi auch erstmal außen vor lassen. Mein Vorschlag wäre deshalb:
- Alle Dateien der bestehenden Shop-Installation auf das Testsystem kopieren.
- In der config.JTL-Shop.ini.php und der .htaccess die URLs, ggfs. Pfade und die DB-Zugangsdaten anpassen.
- Ein Backup der Live-DB erstellen und im Testsystem einspielen.

Jetzt sollte beim Aufruf der Test-URL der Test-Shop ein 1:1 Klon des Live-Systems sein. Nun kann man im Backend des Test-Shop über "Shopdaten zurücksetzen" noch alle Kundendaten und ggfs. noch Bestellungen und Verfügbarkeitsanfragen löschen, damit beim "Rumspielen" nicht aus Versehen E-Mails an echte Kunden verschickt werden.
Zum Testen des Updates kann man jetzt auf dem Testsystem genauso vorgehen, wie man es im Live-System machen würde. Also Shopdateien über die Alten installieren, anschließend im Backend das Datenbank-Update ausführen, alle eigenen Anpassungen und ggfs. Plugin-Updates, ... etc. machen. Je nachdem ob und was schief geht, kann man diesen Vorgang sooft wiederholen, bis man eine Strategie hat, die den besten Erfolg und die kürzeste Ausfallzeit verspricht.
 
  • Gefällt mir
Reaktionen: Tomas

Tomas

Sehr aktives Mitglied
8. Januar 2018
330
70
Lübeck
Die Testszenarien und damit auch das Vorgehen unterscheiden sich jedoch, ob ich grundsätzlich ein Testsystem für Eigenentwicklungen einrichten, oder ob ich den Updatevorgang selbst testen möchte.
Da hast du allerdings Recht, da habe ich nicht drüber nachgedacht. Ich hatte direkt eine komplette Testumgebung im Kopf...war im nachhinein aber auch gar nicht wonach er gefragt hat. o_O
 

Ralf Römling

Aktives Mitglied
30. Januar 2019
62
7
Hallo Tomas, Hallo Herr Prüfer,
danke für das Feedback und wie Herr Prüfer schon richtig geschrieben hat, geht's darum, den Update-Prozess zu testen ohne Daten in die Wawi zurückzuspielen oder (das war mir gar nicht klar) evt. Mails an Kunden zu versenden.

@FPrüfer : Was muß ich denn noch konfigurieren, damit das nicht passiert und die Test-Umgebung wirklich still bleibt?
 

FPrüfer

Moderator
Mitarbeiter
19. Februar 2016
1.881
529
Halle
Hallo,
Was muß ich denn noch konfigurieren, damit das nicht passiert und die Test-Umgebung wirklich still bleibt?
Wenn in der Testumgebung die Kunden und Newsletterempfänger gelöscht werden, sollten eigentlich keine Mails an externe Personen mehr verschickt werden. Ggfs. kann man dann in den E-Mail-Einstellungen noch ein reines Testkonto für die "Master-E-Mail-Adresse" hinterlegen. Wenn man nicht möchte, das alle Nutzer mit Backendzugriff im Live-System kann man im Testsystem noch die Backend-Nutzer in der "Benutzerverwaltung" anpassen. Wenn dann doch mal eine Test- Wawi angebunden wird, dann sollte auch noch die Tabelle tverfuegbarkeitsbenachrichtigung geleert werden, um nicht versehentlich eine Verfügbarkeitsbenachrichtigung auszulösen.
 

raoul75

Aktives Mitglied
1. März 2012
57
12
Berlin
Ein kleiner Hinweis noch zum Thema Entwicklungsserver: wir haben das in der Vergangenheit meist mit einem Inselsystem ohne Internetzugang gemacht auf dem XAMPP (gibts auch für Windows) installiert wurde. XAMPP simuliert einen Apache Webserver und bringt PHP 7, mySQL/mariaDB und alle anderen notwendigen Features mit. Auf dem gleichen Rechner kann testweise dann auch eine JTL Wawi installiert werden, die den Abgleich mit dem (virtuellen) Apache Webserver durchführt. Auf dem Webspace des (virtuellen) Apache Webservers muss man dann nur noch einen Dump der aktuellen JTL Shop Installation einspielen, die Datenbank übernehmen, alle Einstellungen an den realen Webserver anpassen und dann kann das Testen losgehen. In der Vergangenheit war das für uns bei allen Shop-Änderungen ein sehr hilfreiches Tool.
 

Ralf Römling

Aktives Mitglied
30. Januar 2019
62
7
Yep, gute Lösung, allerdings möchte der Kunde die Unterschied zwischen der upgedateten Version und dem Live-System einsehen. (Das ginge natürlich auch per Screencast, aber zwei Instanzen im Web sind dann doch einfacher).

Grundsätzlich bin ich aber bei Dir, was xampp angeht. In einer virtuellen Maschine gehen dann ja auch schnelle Snapshot-Sicherungen, usw..
 

Ralf Römling

Aktives Mitglied
30. Januar 2019
62
7
Sodala, nun wollte ich meine Testumgebung einrichten und dem Shop updaten gemäß (Anleitung), jedoch kommt beim Import der Datenbank in phpmyadmin dieser Fehler:

Code:
CREATE ALGORITHM=UNDEFINED DEFINER=`PW123456`@`%` SQL SECURITY DEFINER VIEW `elmar_merkmale_temp_views`  AS  select `merke`.`kArtikel` AS `kArtikel`,group_concat(distinct `am`.`cName`,',,',`aw`.`cWert` order by `am`.`nSort` ASC separator '||') AS `Merkmale` from (`tmerkmalwertsprache` `aw` left join (`tmerkmal` `am` left join `tartikelmerkmal` `merke` on((`merke`.`kMerkmal` = `am`.`kMerkmal`))) on((`merke`.`kMerkmalWert` = `aw`.`kMerkmalWert`))) group by `merke`.`kArtikel`

MySQL meldet:
#1227 - Kein Zugriff. Hierfür wird die Berechtigung SUPER benötigt

Übergehe ich diesen und versuche das DB-Update im Shop, bekomme ich diesen Fehler:

Code:
Ihre aktuelle Shopversion
     System: 4.06
     Datenbank: 4.04
Starte Update
     Update auf Migration: Add news category image erfolgreich
     Update auf Migration: Added option for dimension of articles erfolgreich
     Update auf Migration: Added new group description tab and sorting options erfolgreich
     Update auf Migration: Add new link types erfolgreich
     Update auf Migration: 404 to hidden linkgroup erfolgreich
     Update auf Migration: Add lang key dimensions_2d erfolgreich
     Update auf Migration: Lang vars poll coupon erfolgreich
     Update auf Migration: Dynamic options sources erfolgreich
     Update auf Migration: Add unique index tverfuegbarkeitsbenachrichtigung erfolgreich
     Update auf Migration: Add bisactive to link erfolgreich
     Update auf Migration: Add export format cache option erfolgreich
Fehler bei Update: SQLSTATE[42000]: Syntax error or access violation: 1091 Can't DROP 'PRIMARY'; check that column/key exists

Hat jemand eine Idee, was hier falsch läuft und wie ich dies abstellen kann?
 

FPrüfer

Moderator
Mitarbeiter
19. Februar 2016
1.881
529
Halle
Hallo,
die View elmar_merkmale_temp_views ist kein Shopbestandteil. Die muss also mal der User "PW123456" in der Shopdatenbank angelegt haben, so dass sie beim Export mit ins Backup gewandert ist.
Zu dem Update-Fehler: Welche MySQL-Version wird verwendet? Offensichtlich scheitert dort die Migration_20160608112900 bei der ein neuer Primärschlüssel für die Tabelle tlink angelegt wird.
 

Ralf Römling

Aktives Mitglied
30. Januar 2019
62
7
Hallo,
das ist mal spannend, weil ich nicht glaube, das der Kunde an seiner DB rumgeschraubt hat :) Kann das nicht mit dem Shopinfo-Export-Modul zu tun haben? Meinen Sie, ich kann den View einfach löschen?

Der Test-DB-Server ist wie folgt konfiguriert:
Datenbank-Server
  • Server-Typ: MariaDB
  • Server-Version: 10.1.38-MariaDB-0+deb9u1 - Debian 9.8
  • Protokoll-Version: 10
  • Server-Zeichensatz: UTF-8 Unicode (utf8)
Webserver
  • Apache/2.4.25 (Debian)
  • Datenbank-Client Version: libmysql - mysqlnd 5.0.12-dev - 20150407 - $Id: b5c5906d452ec590732a93b051f3827e02749b83 $
  • PHP-Erweiterung: mysql mbstring
  • PHP-Version: 7.0.33-0+deb9u3
phpMyAdmin
  • Versionsinformationen: 4.8.2, aktuelle stabile Version: 4.8.5
 
Zuletzt von einem Moderator bearbeitet:

Ralf Römling

Aktives Mitglied
30. Januar 2019
62
7
Das Problem hat sich geklärt:

In der exportierten SQL-Datei ist für die Anlage des Views der berechtigte DEFINER in der Form db-user@db-server angegeben.

mariadb scheint beim Export hier eine Wildcard "%" einzufügen, die aber beim Import nicht automatisch mit der neuen IP befüllt wird.

Nach manuellem Eintragen der DB-Server-IP läuft der Import durch.
 
Zuletzt bearbeitet:
Ähnliche Themen
Titel Forum Antworten Datum
Seit dem Update meines JTL-Shops auf Version 5.7.1 funktioniert die Verbindung zwischen JTL-Wawi 2.0.4.0 und dem Shop nicht mehr. JTL-Wawi 2.0 1
JTL Shop 4 Upgrade auf 5.5.0 --> Fehler 500 Upgrade JTL-Shop4 auf JTL-Shop5 2
JTL Shop 4 Upgrade auf 5.5.0 --> Fehler 404 Upgrade JTL-Shop4 auf JTL-Shop5 11
Neu Shop 5.7.2 - JTL PayPal Checkout legt alles lahm JTL-Shop - Fehler und Bugs 4
Neu JTL Shop Plugin - BD Automatisierter Widerruf (Von Händler für Händler - Schluss mit Mail-Chaos & Spam-Sorgen!) Plugins für JTL-Shop 0
Neu Welche JTL Shop Plugins oder kleinen Hilfstools würden euch im Alltag wirklich helfen? Plugins für JTL-Shop 0
Neu Plugin: JTL Exportformat Google Shopping gibt <g:google_product_category> unter Shop 5.7.1 und Wawi 2.0.4 nicht aus Plugins für JTL-Shop 1
Neu Widerrufsbutton für JTL-Shop 4 Allgemeine Fragen zu JTL-Shop 17
Neu Rabatte aus dem JTL-Shop werden in der Wawi nur als Netto-Preis übernommen, Rabatt % gehen verloren Onlineshop-Anbindung 0
Neu JTL-Shop - Wechsel von Test zum Livebetrieb - was beachten ? Installation / Updates von JTL-Shop 2
Neu Meta Shop seit September 2025: JTL-Lösung für neue Checkout-URL gesucht Allgemeine Fragen zu JTL-Shop 0
Rabatt Coupons in Verbindung mit Staffelpreisen - JTL 1.11.9, JTL Shop JTL-Wawi 1.11 0
Fehler beim Abgleich mit dem JTL-Shop JTL-Wawi 2.0 12
Neu OnFinds: KI-Suche für JTL-Shop mit fairer Abrechnung nach Artikelanzahl. 30 Tage kostenlos testen Plugins für JTL-Shop 0
Neu Freelancer für JTL-Wawi, Shop & Prozessautomatisierung Dienstleistung, Jobs und Ähnliches 2
Neu JTL Shop 5.7.1 mit Fehlern - versandarten zahlungsarten nicht änderbar, leere weiße Seite JTL-Shop - Fehler und Bugs 5
Neu Massiver jtl-shop-cron aufruf JTL-Shop - Fehler und Bugs 7
Neu Neues Plugin: Erweiterter Widerrufsbutton für JTL-Shop Plugins für JTL-Shop 9
Neu [Suche 5 Beta-Tester] KI generiert JTL Shop 5 Templates per Beschreibung – kostenlos testen Templates für JTL-Shop 7
Neu Telemetrie-Datenerfassung in JTL-Shop 5.7.0: Bitte um Klarstellung der DSGVO-relevanten Aspekte Allgemeine Fragen zu JTL-Shop 5
Neu JTL Shop 5 und Klarna Plugins für JTL-Shop 0
Neu JTL Shop 5.7 - Widerrufsbutton im B2B Templates für JTL-Shop 18
Neu Dropdown jtl shop länge einstellen Allgemeine Fragen zu JTL-Shop 2
JTL-Shop 5.7.0 Widerrufsbutton Einrichtung JTL-Shop5 42
Neu JTL Shop Template Snackys Bildgrößen einstellen Templates für JTL-Shop 1
Neu JTL-Shop 5.7 - Aktuell 5.7.2 Releaseforum 2
Neu Gratisgeschenke im JTL Shop nicht wirklich nutzerfreundlich. Allgemeine Fragen zu JTL-Shop 4
Neu JTL-WMS und JTL-POS... Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 0
Fehlermeldung beim Einlesen der Buchungen in JTL Fibu JTL-Wawi 2.0 0
JTL-Ameise 2.04 - Export Rechnungen csv - unvollständig JTL-Wawi 2.0 12
Neu Belege aus JTL Wawi zu Lexoffice Schnittstellen Import / Export 5
Neu Varianten die nicht online in JTL geschaltet sind werden trotzdem zu Shopify geladen Shopify-Connector 2
Neu Gesucht: JTL-Systempartner/Freelancer mit Erfahrung in Personalisierungs-/Gravur-Fulfillment Dienstleistung, Jobs und Ähnliches 3
Neu JTL Stammtisch Stuttgart Messen, Stammtische und interessante Events 0
Neu Copy/Paste Abstürze seit JTL-Wawi 2.0.5 User helfen Usern - Fragen zu JTL-Wawi 4
Gelöst: Störung bei LInk11 - JTL- Shops teilweise nicht erreichbar Störungsmeldungen 1
JTL Update auf 1.9 , danach Import Kundenspezifrische Preise velerhaft JTL-Wawi 1.9 0
Wie übernehme ich Artikelnamen von JTL in den neuen Kaufland Niederlande-Verkaufskanal? JTL-Wawi 1.11 1
Neu Wie stelle ich Retouren in JTL für DPD ein? JTL-ShippingLabels - Ideen, Lob und Kritik 1
Neu JTL Wawi 1.11.11 - Zahlungsabgleich bei FYRST Bank verlangt immer Passwort User helfen Usern - Fragen zu JTL-Wawi 0
Neu Der wahrscheinlich östlichste JTL Servicepartner: Standortvorteil, faire Preise und vieles mehr Dienstleistung, Jobs und Ähnliches 16
Neu JTL ShippingLabels - Meldungen JTL-ShippingLabels - Fehler und Bugs 7
Neu Beta-Tester gesucht: Produktdaten aus Artikelfotos schneller für JTL/CSV vorbereiten Dienstleistung, Jobs und Ähnliches 0
Neu oAuth Credentials Login mit JTL .. WO? User helfen Usern 1
Neu Installationsdatei für JTL‑Wawi 1.9.6.5 Installation von JTL-Wawi 2
Neu kostenlos: DHL Sendungsverfolgung für JTL-Wawi – Web-Dashboard mit Frühwarnsystem Schnittstellen Import / Export 0
Neu JTL Wawi 2.0 oder höher WooCommerce-Connector 0
Changelog jtl Wawi 2.0.5 JTL-Wawi 2.0 10
Neu Ist es ohne Probleme möglich Cloudflare in der Free Version mit JTL zu nutzen? Allgemeine Fragen zu JTL-Shop 7
JTL 5.7.1 Widerrufsformular massiver SPAM Einrichtung JTL-Shop5 3

Ähnliche Themen