1.5.6.1 upgrade na vyššie

Riešenie problémov s inštaláciou alebo aktualizáciou.
Používateľov profilový obrázok
Axel Wers
Príspevky: 361
Dátum registrácie: 12. Okt 2012 14:04
Verzia OpenCartu: 2.3.0.2

Re: 1.5.6.1 upgrade na vyššie

Príspevok od používateľa Axel Wers »

Samozrejme, že tabuľky nestačí skopírovať. A v prípade OC 1.5.6.x zrejme nebude stačiť ani natívny upgrade skript, ale bude potrebné tabuľky aktualizovať pomocou modulu, ktorý som uviedol vyššie.


Mňa akurát zaujíma, ale to bude vedieť asi Selfman alebo Nestor lepšie, čo s modulmi, ktoré v DB vytvorili vlastné tabuľky? Asi bude lepšie tieto moduly úplne odinštalovať a až potom aktualizovať.
Používam OC verziu 1.5.6.4
Martin80
Príspevky: 117
Dátum registrácie: 30. Jan 2017 12:03
Verzia OpenCartu: 2.3.0.2
Kontaktovať používateľa:

Re: 1.5.6.1 upgrade na vyššie

Príspevok od používateľa Martin80 »

Pokiaľ ma skúsenosti neklamú, tak dokonca z 1.5.6 upgrad na 2.3.0.2 prebehne bez problému vstavaným skriptom. S trojkovou neviem ako. Upraví samozrejme len oc tabuľky. Moduly je potrebné odinštalovať všetky, dokonca aj niektoré vstavané, pretože medzi verziami sa menila aj štruktúra adresárov. Ak by si neodinštaloval napríklad cudzie moduly, výsledok by bol, ako keby si na 2x verziu použil modul pre 1x, čo by viedlo minimálne k chybným controllerom i template, prípadne modelom, nesprávnemu pomenovaniu tried a v niektorých prípadoch aj k ich chybnému umiestneniu v adresárovej štruktúre.
Tabuľky cudzích modulov môžu a nemusia pracovať na nových verziách, to záleží, či tvorca modulu medzi verziami robil aj zmenu štruktúry tabuliek. Ak zmeny nerobil, tak postačí len aktualizovať modul. A ak zmeny robil a nechceš prísť o dáta v tabuľke, tak jednu-dve tabuľky upravíš aj manuálne podľa vzoru ktorý je niekde v kóde modulu alebo v inštalačnom skripte.
SelfMan
Administrátor
Príspevky: 1029
Dátum registrácie: 19. Aug 2011 23:55

Re: 1.5.6.1 upgrade na vyššie

Príspevok od používateľa SelfMan »

Tak tak, treba si opisat konfiguraciu vsetkych modulov a tie potom povypinat. A az ked je vsetko povypinane/odinstalovane, tak az potom spravit upgrade.
Tak ako vzdy, odporucam robit to v lokalnej kopii eshopu a nie na ostrom webe.
Používateľov profilový obrázok
Axel Wers
Príspevky: 361
Dátum registrácie: 12. Okt 2012 14:04
Verzia OpenCartu: 2.3.0.2

Re: 1.5.6.1 upgrade na vyššie

Príspevok od používateľa Axel Wers »

Martin80 napísal:Pokiaľ ma skúsenosti neklamú, tak dokonca z 1.5.6 upgrad na 2.3.0.2 prebehne bez problému vstavaným skriptom.
Ja som to skúšal s čistou verziou, ale zhorel som jak fakľa. Ale tuším tam bol problém s MySQLi. Niekedy to ešte otestujem

Moduly je potrebné odinštalovať všetky, dokonca aj niektoré vstavané, pretože medzi verziami sa menila aj štruktúra adresárov. Ak by si neodinštaloval napríklad cudzie moduly, výsledok by bol, ako keby si na 2x verziu použil modul pre 1x, čo by viedlo minimálne k chybným controllerom i template, prípadne modelom, nesprávnemu pomenovaniu tried a v niektorých prípadoch aj k ich chybnému umiestneniu v adresárovej štruktúre.
Preto, ako som vravel, lepšie bude zo starého eshopu zobrať len produkty, kategórie, užívateľov, zákazníkov a objednávky a všetko čo k tomu súvisí (možnosti pri produktoch, filtre, atribúty a pod.)

Teda exportovať tabuľky, ktoré obsahujú tieto dáta.

Nainštaloval by som čistú verziu 1.5.6.x a naimportoval do databázy tieto tabuľky.

Potom súbory 1.5.6 by som zmazal (akurát by som tam ešte dal zložku images)

Potom by som skopíroval na FTP súbory nového eshopu a spravil upgrade na najnovšiu verziu (buď skúsiť to cez natívny skript alebo použiť modul od peku).

A nakoniec eshop už len dorobiť (vlastný template a pod).

Týmto postupom by to malo fungovať.
SelfMan napísal:Tak ako vzdy, odporucam robit to v lokalnej kopii eshopu a nie na ostrom webe.
Som u WebSupport, tam nemám obavy testovať. Zakaždým, keď sa niečo podarí, v admine si jednoducho skopírujem aktuálne fungujúcu databázu, čím si vytvorím zálohu. Ak sa niečo pokafre, tak sa pripojím k zálohe a môžem pokračovať.
Používam OC verziu 1.5.6.4
Napísať odpoveď