Lokales Backup OXID eshop COMMUNITY EDITION 4.3.2_27884

Hallo Community,
ich bin neu hier also entschuldigt bitte falls ich es nicht auf anhieb schaffe mein Problem genau zu schildern.

Ich bin Gestalter und CSSler - habe mit OXID noch nie was zu tun gehabt. Ich würde gerne das Template eines existierenden OXID-Shops bearbeiten. Da ich das nicht im laufenden Betrieb machen kann, wollte ich ein Backup des Shops local installieren da bearbeiten und dann nur die bearbeiteten Dateien ersetzen.

Im ersten Anlauf habe ich per FTP alle Dateien gezogen und mit phpMyAdmin die Datenbank exportiert. Lokal in ein Unterverzeichnis von MAMP gelegt die config.inc.php angepasst und getestet. Leider hat das nicht funktioniert. Wenn ich auf den root-Ordner zugreife, dann bleibt der Bildschirm weiß.

Im zweiten Schritt habe ich versucht diese Anleitung zu befolgen: http://wiki.oxidforge.org/Tutorials/Einen_Oxid-Shop_umziehen_lassen
Zusammengefasst steht da drin, dass man im ersten Schritt eine Basis-Installation mit der gleichen Shopversion wie auf dem alten Server durchführen soll. Dann ein Backup des alten Shops erstellen und bis auf ein paar Dateien über die Basis-Installation schreiben.

Jetzt hat der Shop den ich stylen will anscheinend eine unaktuelle Shopversion und ich kann das auch nicht ändern, weil ich eben nur für das Design zuständig bin. Die Version ist "COMMUNITY EDITION 4.3.2_27884"
Also habe ich mir die Version 4.3.2 hier runtergeladen: http://wiki.oxidforge.org/Downloads/4.3.2
Als ich aber versucht habe diese Version lokal mit MAMP zu installieren bekomme ich im vierten Installationsschritt folgenden Fehler:

FEHLER: (Tabellen)Probleme mit folgenden SQL Befehlen: ( CREATE TABLE `oxaccessoire2article` ( `OXID` char(32) character set latin1 collate latin1_general_ci NOT NULL, `OXOBJECTID` char(32) character set latin1 collate latin1_general_ci NOT NULL default '', `OXARTICLENID` char(32) character set latin1 collate latin1_general_ci NOT NULL default '', `OXSORT` int(5) NOT NULL default '0', PRIMARY KEY (`OXID`), KEY `OXOBJECTID` (`OXOBJECTID`), KEY `OXARTICLENID` (`OXARTICLENID`)) TYPE=MyISAM; ): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'TYPE=MyISAM' at line 1 

Ich weiß zwar nicht was das bedeutet, aber ich vermute, dass die mySQL version von MAMP neuer ist, als die die das Installationsskript erwartet. Ist das möglich? Könnte mir vielleicht jemand einen Tipp geben wie ich ein Backup dieser Inastallation zu laufen bringen kann?

Beste Grüße vorab
Adrian

Es ist bekannt, dass ältere Versionen nicht in den aktuellen XAMPP - Paketen laufen, ob das bei MAMP genauso ist… ich könnts mir vorstellen.

Mit XAMPP 1.71 müsste es laufen.

Ansonsten, kannst Du Dir ne Kopie in einem (geschützten) Unterordner auf dem Webserver erstellen?

Änder mal folgendes ab und versuche es nochmal:

ENGINE=MyISAM

Danke schon mal für die Tipps. Ich werde beides mal ausprobieren.

@Hebsacker: WIe kommst du genau auf XAMPP 1.71? Ich würde versuchen eine alte MAMP-version zu benutzen. Frage ist welche genau.
Das mit dem Installieren auf den Server ist auch eine gute Idee. Nicht ganz so bequem wie lokal, aber ich denke wenn garnix mehr geht würde ich es so machen.

@novalgin: Wo genau kann ich das hier eintragen?

ENGINE=MyISAM

Ich hab spontan in der php.ini gesucht, aber keins der Worte gefunden.

Das musst Du in der SQL Datei ändern.Vermutlich im Ordner setup/sql/database.sql
Suchern->Ersetzen

EDIT: Also TYPE=MyISAM ersetzen durch ENGINE=MyISAM

Also wenn ich das richtig verstanden habe, dann sollte ich die Datei database.sql im Basis-Installations-Ordner finden und alle Einträge TYPE=MyISAM in ENGINE=MyISAM ändern. Das hab ich gemacht und bekomme aber leider eine noch viel längere Fehlermeldung die ich nicht verstehe :frowning:

FEHLER: (Tabellen)Probleme mit folgenden SQL Befehlen: ( CREATE TABLE `oxarticles` ( `OXID` char(32) character set latin1 collate latin1_general_ci NOT NULL, `OXSHOPID` varchar(32) character set latin1 collate latin1_general_ci NOT NULL default '', `OXPARENTID` char(32) character set latin1 collate latin1_general_ci NOT NULL default '', `OXACTIVE` tinyint(1) NOT NULL DEFAULT '1', `OXACTIVEFROM` datetime NOT NULL default '0000-00-00 00:00:00', `OXACTIVETO` datetime NOT NULL default '0000-00-00 00:00:00', `OXARTNUM` varchar(255) NOT NULL default '', `OXEAN` varchar(13) NOT NULL default '', `OXDISTEAN` varchar(13) NOT NULL default '', `OXMPN` varchar(16) character set latin1 collate latin1_general_ci NOT NULL default '', `OXTITLE` varchar(255) NOT NULL default '', `OXSHORTDESC` varchar(255) NOT NULL default '', `OXPRICE` double NOT NULL default '0', `OXBLFIXEDPRICE` tinyint(1) NOT NULL default '0', `OXPRICEA` double NOT NULL default '0', `OXPRICEB` double NOT NULL default '0', `OXPRICEC` double NOT NULL default '0', `OXBPRICE` double NOT NULL default '0', `OXTPRICE` double NOT NULL default '0', `OXUNITNAME` varchar(32) NOT NULL default '', `OXUNITQUANTITY` double NOT NULL default '0', `OXEXTURL` varchar(255) NOT NULL default '', `OXURLDESC` varchar(255) NOT NULL default '', `OXURLIMG` varchar(128) NOT NULL default '', `OXVAT` float default NULL, `OXTHUMB` varchar(128) NOT NULL default '', `OXICON` varchar(128) NOT NULL default '', `OXPICSGENERATED` tinyint(3) NOT NULL default '0', `OXPIC1` varchar(128) NOT NULL default '', `OXPIC2` varchar(128) NOT NULL default '', `OXPIC3` varchar(128) NOT NULL default '', `OXPIC4` varchar(128) NOT NULL default '', `OXPIC5` varchar(128) NOT NULL default '', `OXPIC6` varchar(128) NOT NULL default '', `OXPIC7` varchar(128) NOT NULL default '', `OXPIC8` varchar(128) NOT NULL default '', `OXPIC9` varchar(128) NOT NULL default '', `OXPIC10` varchar(128) NOT NULL default '', `OXPIC11` varchar(128) NOT NULL default '', `OXPIC12` varchar(128) NOT NULL default '', `OXWEIGHT` double NOT NULL default '0', `OXSTOCK` double NOT NULL default '-1', `OXSTOCKFLAG` tinyint(1) NOT NULL default '1', `OXSTOCKTEXT` varchar(255) NOT NULL default '', `OXNOSTOCKTEXT` varchar(255) NOT NULL default '', `OXDELIVERY` date NOT NULL default '0000-00-00', `OXINSERT` date NOT NULL default '0000-00-00', `OXTIMESTAMP` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP, `OXLENGTH` double NOT NULL default '0', `OXWIDTH` double NOT NULL default '0', `OXHEIGHT` double NOT NULL default '0', `OXFILE` varchar(128) NOT NULL default '', `OXSEARCHKEYS` varchar(255) NOT NULL default '', `OXTEMPLATE` varchar(128) NOT NULL default '', `OXQUESTIONEMAIL` varchar(255) NOT NULL default '', `OXISSEARCH` tinyint(1) NOT NULL default '1', `OXISCONFIGURABLE` tinyint NOT NULL DEFAULT '0', `OXVARNAME` varchar(255) NOT NULL default '', `OXVARSTOCK` int(5) NOT NULL default '0', `OXVARCOUNT` int(1) NOT NULL default '0', `OXVARSELECT` varchar(255) NOT NULL default '', `OXVARMINPRICE` double NOT NULL default '0', `OXVARNAME_1` varchar(255) NOT NULL default '', `OXVARSELECT_1` varchar(255) NOT NULL default '', `OXVARNAME_2` varchar(255) NOT NULL default '', `OXVARSELECT_2` varchar(255) NOT NULL default '', `OXVARNAME_3` varchar(255) NOT NULL default '', `OXVARSELECT_3` varchar(255) NOT NULL default '', `OXTITLE_1` varchar(255) NOT NULL default '', `OXSHORTDESC_1` varchar(255) NOT NULL default '', `OXURLDESC_1` varchar(255) NOT NULL default '', `OXSEARCHKEYS_1` varchar(255) NOT NULL default '', `OXTITLE_2` varchar(255) NOT NULL default '', `OXSHORTDESC_2` varchar(255) NOT NULL default '', `OXURLDESC_2` varchar(255) NOT NULL default '', `OXSEARCHKEYS_2` varchar(255) NOT NULL default '', `OXTITLE_3` varchar(255) NOT NULL default '', `OXSHORTDESC_3` varchar(255) NOT NULL default '', `OXURLDESC_3` varchar(255) NOT NULL default '', `OXSEARCHKEYS_3` varchar(255) NOT NULL default '', `OXBUNDLEID` varchar(32) character set latin1 collate latin1_general_ci NOT NULL default '', `OXFOLDER` varchar(32) NOT NULL default '', `OXSUBCLASS` varchar(32) NOT NULL default '', `OXSTOCKTEXT_1` varchar(255) NOT NULL default '', `OXSTOCKTEXT_2` varchar(255) NOT NULL default '', `OXSTOCKTEXT_3` varchar(255) NOT NULL default '', `OXNOSTOCKTEXT_1` varchar(255) NOT NULL default '', `OXNOSTOCKTEXT_2` varchar(255) NOT NULL default '', `OXNOSTOCKTEXT_3` varchar(255) NOT NULL default '', `OXSORT` int(5) NOT NULL default '0', `OXSOLDAMOUNT` double NOT NULL default '0', `OXNONMATERIAL` int(1) NOT NULL default '0', `OXFREESHIPPING` int(1) NOT NULL default '0', `OXREMINDACTIVE` int(1) NOT NULL default '0', `OXREMINDAMOUNT` double NOT NULL default '0', `OXAMITEMID` varchar(32) character set latin1 collate latin1_general_ci NOT NULL default '', `OXAMTASKID` varchar(16) character set latin1 collate latin1_general_ci NOT NULL default '0', `OXVENDORID` char(32) character set latin1 collate latin1_general_ci NOT NULL default '', `OXMANUFACTURERID` char(32) character set latin1 collate latin1_general_ci NOT NULL default '', `OXSKIPDISCOUNTS` tinyint(1) NOT NULL default '0', `OXRATING` double NOT NULL default '0', `OXRATINGCNT` int(11) NOT NULL default '0', PRIMARY KEY (`OXID`), KEY `OXCOUNT` (`OXPARENTID`,`OXSHOPID`), KEY `OXSORT` (`OXSORT`), KEY `OXSHOPID` (`OXSHOPID`), KEY `OXISSEARCH` (`OXISSEARCH`), KEY `OXARTNUM` (`OXARTNUM`), KEY `OXSTOCK` (`OXSTOCK`), KEY `OXSTOCKFLAG` (`OXSTOCKFLAG`), KEY `OXINSERT` (`OXINSERT`), KEY `OXVARNAME` (`OXVARNAME`), KEY `OXACTIVE` (`OXACTIVE`), KEY `OXACTIVEFROM` (`OXACTIVEFROM`), KEY `OXACTIVETO` (`OXACTIVETO`), KEY `OXVENDORID` (`OXVENDORID`), KEY `OXMANUFACTURERID` (`OXMANUFACTURERID`))TYPE=InnoDB; ): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'TYPE=InnoDB' at line 1

Ganz unten: TYPE=InnoDB ersetzen durch ENGINE=InnoDB.
Wahrscheinlich ist es bei einer so alten Version einfacher den Shop nicht zu installieren sondern gleich ein Backup der DB einzuspielen, die Dateien zu kopieren und config.inc/htaccess manuell anzupassen.

Ach, also sollte ich also alle TYPE in ENGINE umwandeln?

Also ich habe jetzt mal nach einer alten MAMP version geschaut die in etwa die mySQL version hat die auf dem Server läuft (mySQL 5.1.61) MAMP 1.9.4 läuft mit mySQL 5.1.44.

Hab auf jeden Fall alles aufgespielt und konnte die Oxid 4.3.2 Installation tatsächlich erfolgreich abschließen :D. Jetzt würde ja nur noch bleiben das Backup drüberzuschreiben. Ich hoffe das klappt auch. Ich werde es versuchen und berichte dann.

Das überspielen hat im Grunde super funktioniert und das Frontend des Backups sieht jetzt lokal genau so aus wie das original. :smiley: Das sollte mir auf jeden Fall genügen.

Jetzt ist mir nur eine Kleinigkeit aufgefallen: Wenn ich mich lokal ins Backend einlogge und auf “Administer Products / Products” gehe, dann sehe ich im Gegensatz zum Original keine gespeicherten Produkte. Das ist seltsam, weil ich die Produkte im Frontend lokal sehen kann.

Merkwürdig ist auch, dass das gesamte Oxid Backend englisch ist (Das original Backend ist auf deutsch), obwohl ich beim einloggen “Deutsch” auswähle.

Habt ihr eine idee wieso das so ist?

Edit: die Sprache im Backend hatte sich erledigt als ich als ich das Theme in der config Eingestellt hatte “$this->sTheme”

[QUOTE=bad_habit;131872]
Wenn ich mich lokal ins Backend einlogge und auf “Administer Products / Products” gehe, dann sehe ich im Gegensatz zum Original keine gespeicherten Produkte. Das ist seltsam, weil ich die Produkte im Frontend lokal sehen kann.[/QUOTE]

Hast du die Views upgedated?

4.3.2 hat ja keine views.

Ich weiß jetzt nicht was “Views” bei Oxid genau bedeutet. Ich hab auf jeden Fall den /tmp Ordner leer gemacht. Die Artikel werden im Backend aber leider immernoch nicht angezeigt. Für mich ist das jetzt auch nicht weiter tragisch, weil ich den Content offline eh nicht barbeiten will und die Artikel im Frontend ja angezeigt werden, aber vielleicht wäre es hilfreich für jemand anderen mit einem ähnlichen Problem.