Totaler Anfänger: Systemwechseln von Fehlerhaften Oxid (Mix aus 4.5 und 4.6) auf Oxid 4.7 inklusive Übertragung alle wichtigen Daten (Artikel, Kunden)

Hallo,
ich hoffe einmal hier an der richtigen Stelle zu sein und dass mir jemand helfen kann.:slight_smile:

[B]Ursprüngliche Aufgabe:[/B]
Als Praktikantin habe ich die Aufgabe bekommen in einem Oxid eShop ein Template zu installieren. Mittels Zugangsdaten zum Oxid eShop sowie den FTP-Daten habe ich mich zu Beginn einmal im Backend umgesehen.
Nachdem ich auch die Zip-Datei mit dem Template erhielt und die zugehörige Installationsanleitung gelesen habe konnte ich erst nur schmunzeln. War und ist diese doch sehr leicht und vor allem verständlich gehalten. :wink:
Entsprechend wollte ich sofort loslegen und rechnete mit einer Arbeit von wenigen Minuten.

Aber weit gefehlt, denn mittlerweile sind daraus bereits mehrere Tage geworden.:eek:

[B]Problem:[/B]
Das Problem war, dass das Template zwar für Oxid ab V 4.6. verfügbar war, wie es auch bei mir im Backend angezeigt wurde. Doch nach Recherche und Anfrage beim Shop für das Template (und Beschreibung meiner verfügbaren Backend-GUI) stellte man schnell fest, dass ich eher einen Mix aus V 4.5 und V 4.6 habe, denn hier existierte noch kein Bereich “Themen” sondern “Look & Fell”:eek:

[B]Lösung:[/B]
Mir wurde angeraten eher eine neu Installation vorzunehmen und diese möglichst gleich auf 4.7. Was auch entsprechend beschlossen wurde. Zumal es sinnvoller ist als Ewigkeiten mit der Fehlersuche zu verbringe.:o

So installierte ich mir auf dem lokalen Rechner einmal XAMPP, lud mir die Installationsdatei für den Oxid 4.7.1 runter und folgte der Anweisung entsprechend dem Buch “Online-Shops mit OXID eShop”.:slight_smile:

Folgend sorgte ich mit “phpmyadmin” dafür, dass ich nun 3 neue Datenbanken erstellte. Einmal für die Demo-Daten, damit man den neuen Shop mit Daten sieht. Daraufhin 2 Datenbanken die keine Shopdaten enthalten sollten. Eine einfach für Testzwecke entsprechend dem Buch und die andere für den später wieder laufenden Shop.

Entsprechend installierte ich nun 3mal die Oxid-Version CE 4.7.1. und auch dies funktionierte bisher ohne Probleme. Nachdem man es einmal verstanden hatte.

Kurz darauf fügte ich auch bereits das neue Template ein, welches ich vom Händler inzwischen für die 4.7. erhalten hatte. Was mit der Anleitung auch innerhalb weniger Minuten (wenn es viel waren, waren es 10 Minuten) sowohl auf der Demo-Version wie auch auf dem neuen leeren Shop installierte.

Entsprechend ist das erste Ziel also erfüllt worden, das Template funktioniert auch.

[B]Neue Aufgabe:[/B]
Doch nun hatte sich die ursprüngliche Aufgabe komplett gewandelt. Denn durch die neue Installation müssten auch alle alten Daten in den neuen Shop übertragen werden und hier komme ich zu dem Teil der mir Probleme bereitet.

So zumindest der aktuelle Stand der Dinge.

Natürlich lese ich viel im Buch nach und gucke auch online rum. Aber wirklich helfen tut mir das ganze nicht. Richtet sich das Buch hier eher auf einen komplett neuen Shop anstatt um einen Umzug.

[B]Neue Probleme und eigene Lösungsansätze:[/B]
Die alte Shop-Version besitzt auch kein phpMyAdmin, was mir die Arbeit erleichtern würde. Wodurch ich wirklich nur über FTP auf den Server und übers Backend auf den Shop zugreifen kann.

Dabei muss ich noch die Benutzer - welche den Wechsel ja gar nicht bemerken sollten -, die Kategorien und Artikel (um die 200 Stück) und einige Shopeinstellungen übernehmen.

Bei den Einstellungen hatte es gedauert bis ich feststellte, dass ich weitere Länder unter “Global” nur über das hinzufügen von “Länder” bekam, die ich dort aktivieren musste. Doch hier gibt es ja nun den Punkt mit dem “keine Mehrwertsteuer” bzw. “keine Mehrwertsteuer bei bekannter Umsatzsteuer-Identnummer”, den man natürlich nicht ausschalten kann. :confused: Will ich doch, dass auch die Kunden aus anderen Ländern brav die Mehrwertsteuer zahlen. Zumal ich bisher nur mitbekommen habe, dass man diese Umsatzsteuer-Identnummer auch immer vor Zahlung prüfen müsste.

Zudem sollten scheinbar noch Paypal und möglichst sogar noch eBay integriert werden.

Ich kann zwar manches auch manuell übernehmen, was die Einstellungen angeht, sofern ich sie finde. So habe ich die Kategorien bereits manuell übertragen.

Doch geht dies bei Kunden und den Artikeln nicht so leicht.
Bei den Kunden gibt es das Problem mit dem Passwort, welches von Oxid sicherheitstechnisch verschlüsselt wird, aktuell dafür sorgt, dass ich noch keine Idee habe wie ich diese übertragen soll ohne, dass diesen der Wechsel auffallen sollte. Da ja deren Passwort später auch noch funktionieren sollte.

Auch die Artikel lassen sich nicht so leicht exportieren wie angenommen. Gerade das Oxid im Backend das “Tool” “gen. Export” anbietet hoffte ich hier einfach sämtliche Daten rauslesen zu können. Aber weit gefehlt, die exportierte txt-Datei enthält zwar scheinbar alle Artikel, jedoch bei weitem nicht alle Informationen. Sei es da Daten nicht übernommen werden, es im Langtext neue Semikolon gibt, die den Text fehlerhaft trennen. Anführungszeichen erscheinen, die nirgendwo vorhanden sind und an derer Stelle fehlen. Oder das nur ein Bruchteil der Daten übernommen wird.

Vielleicht wäre es kein Problem würde Oxid seine Daten auch selbst einlesen können. Doch im alten (wie im neuen) sind die TXT-Dateien dafür nicht geeignet, hier wird eine CSV-Datei benötigt. :frowning:

Könnte mir jemand helfen und Tipps geben wie ich die Daten ohne PHP-Kenntnisse und ggf. mit den Tools die mir die fehlerhafte CE 4.6. / CE 4.5 gibt zumindest auslesen kann um sie in die CE 4.7 zu übertragen?

Bisher habe ich zudem gelesen, dass es geschickter wäre ein paar eigene Tabellen zu erstellen und die Shop-Daten von der Oxid-Installation getrennt zu halten. Aber wie dies genau funktioniert habe ich nirgendwo entsprechend gefunden.

Der Bereich “Tools” bei CE 4.5/4.6 bzw. der neuen CE 4.7.1 mit dem SQL erscheint mir auch nicht sonderlich Vertrauenserweckend. Und ich habe nicht wirklich vor alles gleich zu zerschießen indem ich da was mache.

Ich hoffe jemand kann mir helfen und Tipps geben, wo ich ggf. mir helfende Infos finde. Bisher habe ich nur gelesen man möge irgendwelche imaginären Tools einbinden und damit was tun oder phpmyadmin und der gleichen verwenden. Was mir nix bringt, zumal ich nicht genau bestimmen kann wie viel an den Einstellungen im alten Shop CE 4.5 bzw. 4.6 enthält. Was jegliche Installation von Modulen (die ich auch nicht wirklich begreife) eher behindern dürfte.

Nun müsste man natürlich meinen, dass mein Chef mir ggf. helfen könnte. Aber dieser hat selbst auch noch nie mit OXID gearbeitet und hat entsprechend wohl genauso viel bis weniger Erfahrung als ich mit dem Thema.

Chiru

…und das ganze kurz vor Weihnachten :smiley:

Also Grundsätzlich ist das natürlich ganz unglücklich, wenn man keinen Zugriff auf die Datenbank hat.
Wäre es denn möglich, mittels MySQLDumperzuzugreifen? Dafür musst Du das Tool installieren, geht das?

Dann könntest Du die alte Datenbank damit komplett exportieren, in eine neue, leere Datenbank importieren (wo Du dann Zugriff hast) und dort dann die Updates auf 4.7.x ausführen. Die geupdatete Datenbank kannst Du dann wiederum mit der neuen Installation verbinden.

Dein Chef ist ziemlich mutig :smiley:

Wenn Du keinen Zugriff auf die DB hast läuft das vermutlich auf einem ganz normalen Webspace. Du könntest den Provider bitten dir eine Sicherung der DB zu schicken und diese dann bei Dir lokal importieren. Oder schau mal in das Admininterface des Providers. Vielleicht findest Du dort die Option die Daten zu sichern. Dann kannst Du darüber die DB exportieren und wieder importieren.

[QUOTE=Hebsacker;111899]…und das ganze kurz vor Weihnachten :smiley:

Also Grundsätzlich ist das natürlich ganz unglücklich, wenn man keinen Zugriff auf die Datenbank hat.
Wäre es denn möglich, mittels MySQLDumperzuzugreifen? Dafür musst Du das Tool installieren, geht das?

Dann könntest Du die alte Datenbank damit komplett exportieren, in eine neue, leere Datenbank importieren (wo Du dann Zugriff hast) und dort dann die Updates auf 4.7.x ausführen. Die geupdatete Datenbank kannst Du dann wiederum mit der neuen Installation verbinden.[/QUOTE]

Das ganze möglichst schon vor x Wochen und bevor ich die Aufgabe erhielt, trifft es wohl eher. Aber wann will mal jemand etwas irgendwann in der Zukunft und nicht schon gestern. :rolleyes:

MySQLDumper müsste ich mir mal angucken wie der geht und vor allem anfragen ob ichs installieren kann/darf. Ich glaube zumindest nicht, dass wenn ich alles vom Server kopiert habe (sowie es mit FTP-Client geht) auch die DB auf PC gesichert habe, bezüglich des alten Systems. Oder liege ich da komplett falsch?

Wenn ich es gerade richtig verstehe, sofern es geht.
[ol]
[li] Über MySQLDumper die DB sichern.
[/li][li] Lokal (über phpmyadmin) in eine leere DB packen.
[/li][li] Alle Daten gescheit auslesen.
[/li][li] In die neue Shop Version integrieren.
[/li][/ol]


[QUOTE=MeisterYoda;111902]Dein Chef ist ziemlich mutig :smiley:

Wenn Du keinen Zugriff auf die DB hast läuft das vermutlich auf einem ganz normalen Webspace. Du könntest den Provider bitten dir eine Sicherung der DB zu schicken und diese dann bei Dir lokal importieren. Oder schau mal in das Admininterface des Providers. Vielleicht findest Du dort die Option die Daten zu sichern. Dann kannst Du darüber die DB exportieren und wieder importieren.[/QUOTE]

Ich sage es nur ungern, aber irgendwie versteh ich bis auf den ersten Satz fast nur Bahnhof. :smiley:

Um auf den Server zuzugreifen habe ich klugerweise nur die Webadresse der Website … und die hat nix mehr mit dem Provider selbst zu tun. (Klugerweise :()
Wie kommt man auf das Admininterface des Providers?
Ich versteh doch jetzt schon richtig, dass damit das Admininterface gemeint ist wo der Webspace herkommt oder bin ich gerade komplett hirntod und verwechsle X Sachen miteinander? :confused:

… Davor hatte ich ca 2 Monate nur CSS bzw. CSS3 im Kopf und dafür notwendiges (X)HTML bzw. JSP. Was komplett was andres war.

ja, ich meine das Admininterface des Providers. Wenn die seite online ist muss sie wohl irgendwo gespeichert sein und Du hast ja auch FTP-Daten. I.d.R hält der provider dann auch einen Kundenbereich vor, in dem man sich Mail-Adressen einrichten kann, Datenbanken anlegen, Subdomains einrichten kann etc.
Frag diese Login-Daten bei deinem Chef mal an und schau dort nach. Vielleicht hast Du dort dann die Möglichkeit phpmyadmin aufzurufen, oder wenigstens die Option ein Backup zu veranlassen. Die Daten nur per FTP zu kopieren bringt dir nicht so sehr viel. Die DB ist da mit Sicherheit nicht dabei. Wenn das auch zu kompliziert ist, frag deinen Chef wie die Firma heisst bei der er den Webspace gemietet hat und frag bei denen direkt an, ob sie Dir die DB schicken können.

Okay,

werde ich so mal weiter geben. ^^

Habe eben geguckt wie MySQLDumper in etwa läuft von den ersten Anleitungsvideos.
Auch da ist natürlich der Hinweis darauf, dass ich den db-Namen und das Passwort habe sollte.

Es sind also immer Daten notwendig die ich aktuell nicht habe.

Leider habe ich fast schon erwartet, dass die DB nicht aufm Server so liegt, dass man sie nur kopieren bräuchte.

Aber eine technische Frage nebenher. Local habe ich durch XAMPP ja phpmyadmin, wo speichert der eigentlich seine Datenbank hin? Dies mal interessehalber.

phpmyadmin ist nur eine Bedienoberfläche. Die DBs liegen in xampp/mysql/data
db-name, user und pwd stehen in der confic.inc.php von oxid

Achtung bei mysqldumper. Das erforderrt PHP UND Perl.

PHPmyadmin kann man selbst installieren. Einfach per ftp hochladen - fertig. Die Zugangsdaten zur DB stehen in config.inc.php des Shops.

Wenn du den Shop updaten willst, musst du herausfinden, welchen Stand deine DB hat. Als Hypothese kann man mal annehmen dass es die Version ist die im Backend angezeigt wird. Dann installierst du lokal auf deinem Rechner einen Shop in dieser Version, ersetzt die DB mit deiner DB. Dann die Updates nach Anleitung, dann den Shop wieder auf den Webspace kopieren mit dieser Anleitung: http://wiki.oxidforge.org/Tutorials/Einen_Oxid-Shop_umziehen_lassen

Da der Shop während der Zeit offline sein muss damit keine neuen Bestellungen etc. dazukommen, empfiehlt es sich das ganze 2x zu machen, einmal zum Testen, dann Shop offline stellen und nochmal das Ganze.

Und besorg dir irgendjemand in deiner Firma der dir hilft.