Migrarea la Magento 2 Migrarea site-ului

În articolul precedent din această serie, am dat o imagine de ansamblu a procesului de migrare Magento și am discutat câteva dintre argumentele pro și contra de luat în considerare la planificarea migrației. În acest articol, vom sapa mai adânc în detaliile tehnice murdare ale procesului real de migrare.

Actualizarea instrumentului de migrare

Deoarece am instalat deja instrumentul de migrare Magento utilizând instrucțiunile din articolul precedent, următorul pas este să-l configurați corect pentru o migrare reușită. Înainte de a continua configurarea instrumentului de migrare, trebuie să verificați dacă versiunea dvs. de instrument de migrare corespunde versiunii de instalare Magento și, dacă nu, trebuie să actualizați versiunea instrumentului de migrare.

Dacă migrați la Magento versiunea 2.0.0, trebuie să aveți instrumentul de migrare versiunea 2.0.0, de asemenea, dacă aveți versiunea Magento 2.0.2, aveți nevoie de instrumentul de migrare versiunea 2.0.2. Dacă există o nepotrivire a versiunii, migrarea nu va avea succes, deoarece diferite versiuni Magento pot avea structuri de baze de date diferite și au nevoie de mecanisme de cartografiere diferite.

Pentru a verifica versiunea noii dvs. instalări Magento, utilizați următoarea comandă:

php / bin / magento --versiune

Acum, verificați versiunea instrumentului de migrare Magento. Pentru a face acest lucru, mergeți la directorul instrumentului de migrare și deschideți fișierul composer.json. Locația acestui fișier va fi ceva de genul:

Magento director rădăcină / vendor / magento / data-migration-tool / composer.json

În acest fișier, găsiți valoarea versiune, și aceasta este versiunea dvs. de instrument de migrare. Dacă versiunea Magento și instrumentul de migrare se potrivesc, sunteți toți pregătit să treceți la pasul următor. Cu toate acestea, dacă nu, trebuie să modificați versiunea instrumentului de migrare pentru a se potrivi versiunii Magento.

Înainte de a continua cu actualizarea versiunii, faceți o copie de rezervă a directorului de date pentru migrarea datelor, deoarece procesul de actualizare va modifica conținutul acestui folder, iar dacă ceva nu merge bine, este posibil să nu puteți reveni la original dacă nu Nu ai nici un backup. După ce ați făcut backupul, pur și simplu mergeți la directorul rădăcină Magento din serverul dvs. și introduceți următoarea comandă:

compozitorul necesită un instrument de migrare / migrare de date: 2.0.2

Ultimul lucru din comandă este versiunea dvs. Magento. În acest caz este 2.0.0. Dacă al tău este diferit, schimba-l în consecință.

Acum, că ne-am asigurat că avem versiuni similare ale programului Magento și ale instrumentului de migrare, este timpul să configurați corect instrumentul de migrare.

Configurarea migrării

Pentru a configura migrarea Magento, va trebui să creați / actualizați fișierul de configurare și fișierele de mapare. Puteți găsi aceste fișiere în această locație:

Magento2 director rădăcină / vendor / magento / data-migrare-instrument / etc / ce-to-ce

În acest articol, demonstrez ediția comunității pentru emigrarea în ediția comunitară, astfel încât ultimul dosar din calea de mai sus este ce-la-ce, dar dacă aveți de-a face cu ediția de întreprindere, va fi ee în loc de ce.

Crearea unui fișier config.xml configurat corespunzător este o necesitate, înainte de a iniția orice migrare. Pentru a crea fișierul config.xml, conectați-vă la serverul Magento și treceți la acest director:

/ Furnizor / Magento / migrarea datelor-instrument / etc // CE

Utilizați această comandă pentru a crea fișierul config:

cp config.xml.dist config.xml

Acum, odată ce este creat, deschideți-l în orice editor de text și puneți în acest exemplu de cod:

       magento1 Uită-te la Magento 1 directorul rădăcină / app / etc / local.xml 

Aici gazdă, Nume și utilizator câmpurile bazei de date sursă și de destinație sunt obligatorii. De asemenea crypt_key câmpul este obligatoriu. Restul câmpurilor, cum ar fi baza de date parola și source_prefix sunt opționale.

crypt_key câmpul ar trebui să aibă aceeași cheie care poate fi găsită în eticheta cheie a fișierului local.xml, găsită în acest director:

/app/etc/local.xml

Acum că am creat fișierul config.xml, următorul pas opțional este actualizarea fișierelor de mapare. Instrumentul de migrare folosește fișiere de mapare pentru a realiza maparea bazei de date de la Magento 1 la Magento 2. Fișierele de cartografiere conțin informații despre schimbarea denumirilor de tabele și de câmpuri ale bazei de date, tabelele și câmpurile care pot fi ignorate și alte informații de genul acesta. Puteți găsi fișierele de mapare din acest director:

/ Furnizor / Magento / migrarea datelor-instrument / etc

Treceți prin aceste fișiere și, dacă aveți nevoie să actualizați oricare dintre acestea, faceți o copie a fișierului de care aveți nevoie pentru a edita și eliminați .dist din nume. De exemplu, dacă utilizați fișierul map.xml.dist, faceți o copie a acestui fișier cu numele map.xml. Odată ce ați terminat de editat, trebuie să actualizați fișierul config.xml cu noul nume de fișier în nodul opțional. Dacă ați adăugat fișierul map.xml, codul fișierului config.xml creat anterior va deveni astfel:

       magento1 Uită-te la Magento 1 directorul rădăcină / app / etc / local.xml etc /-ce-ce la / 1.9.1.0 / map.xml.dist  

Migrarea setărilor, datelor și a Deltei

Acum, că am terminat cu toate planificarea migrării, instalările, configurațiile și așa mai departe, să începem de fapt procesul de migrare. Pentru aceasta, va trebui să rulați instrumentul de migrare. Pentru a rula instrumentul de migrare, introduceți serverul Magento ca utilizator cu permisiuni de scriere. Pentru a rula comenzile Magento din orice director, adăugați Magento Root Directory / bin în calea sistemului sau puteți rula comenzile în felul următor:

CD /cos

Utilizați următoarea comandă pentru a începe migrarea:

bin / magento migrează:

Aici modul poate fi setări, date sau delta, iar calea spre fișierul config.xml va fi o cale absolută.

Trebuie să efectuați migrarea în această ordine:

  1. Migrați setările
  2. Migrați datele
  3. Migrați delta (modificări)

Migrarea setărilor va duce la migrarea setărilor de plată, impozitare și de livrare referitoare la magazine, site-uri web etc. Pentru a rula migrarea setărilor, executați această comandă:

bin / magento migrează: setările 

Este posibil să nu migrați toate datele. Trebuie să vă conectați cu panoul de administrare, pentru a verifica manual dacă totul este transferat corect. Dacă există o problemă, puteți re-executa această declarație, dar de data aceasta, utilizați argumentul de resetare pentru a începe migrarea de la început. Comanda va arăta astfel:

bin / magento migrează: setări [-r | --reset] 

Odată ce ați terminat setările, începeți imediat migrarea datelor. Procedura este aceeași ca înainte, cu o singură modificare de argument. Comanda care va fi executată va arăta astfel:

bin / magento migrează: date 

Când executați migrarea datelor, instrumentul de migrare verifică dacă tabelele și câmpurile bazei de date ale versiunilor vechi și mai noi ale Magento sunt coerente. În caz de neconcordanță, încearcă să găsească informațiile din fișierele de cartografiere. 

Dacă nu o găsește acolo, va arunca o eroare care menționează nume de tabel și câmpuri îngrozitoare. Problema apare, de obicei, atunci când utilizați o extensie Magento a cărei structură de tabelă nu este compatibilă cu structura bazei de date Magento 2. În acest caz, puteți instala versiunea Magento 2 a extensiei sau puteți ignora aceste fișiere adăugând  etichete la map.xml fişier.

După ce rezolvați problema, puteți relua comanda de migrare a datelor. Un lucru pe care trebuie să-l țineți minte aici este că instrumentul de migrare ține evidența progresului în timp ce migrează, iar odată ce îl reluați, acesta se reia de unde a plecat înainte. Pentru al forța să înceapă de la început, puteți folosi comanda de reset ca aceasta:

bin / magento migrează: date [-r | --reset] 

Următorul pas este migrarea modificărilor (delta). 

După cum sa discutat în articolul precedent din această serie, înainte de a începe procesul de migrare, trebuie să opriți lucrarea Magento 1 cron și tot activitatea din panoul de administrare Magento 1, altele decât problemele de gestionare a ordinelor necesare și să nu reluați activitatea până la procesul de migrare a timpului este finalizat. 

Deși veți întrerupe cea mai mare parte a activității din panoul de administrare Magento 1 înainte de a începe procesul de migrare, vor apărea probleme de procesare a comenzilor. De asemenea, pot apărea noi recenzii de utilizatori sau schimbări în profilurile clienților în această perioadă. Acum trebuie să migrați aceste date utilizând actualizări incrementale.

Pentru a migra actualizările incrementale, executați următoarea comandă:

bin / magento migrează: delta [-r | --reset] 

Aici este necesar să rețineți că migrația incrementală rulează continuu dacă nu o întrerupeți utilizând comanda CTRL + C. Un alt lucru care trebuie menționat aici este faptul că acest instrument migrează doar datele generate de modulele Magento. Dacă o extensie terță parte generează / actualizează unele date între timp, acestea nu vor fi migrate. Dacă doriți ca aceste date să fie migrate, de asemenea, va trebui să actualizați fișierele de configurare Magento 2. Aceasta are nevoie de cunoștințe avansate despre specificația internă a instrumentului de migrare a datelor și este dincolo de domeniul de aplicare al acestui articol.

Migrarea manuală a datelor

Din nou, referindu-ne la primul articol din această serie, deși instrumentul de migrare va face cea mai mare parte a ridicării grele a procesului de migrare, există trei tipuri de fișiere pe care trebuie să le transferați manual:

  1. Fișiere media
  2. Depozitarea designului frontal
  3. ACL-uri (liste de control acces)

Pentru a transfera fișierele media, accesați mai întâi panoul de administrare Magento 1. Mergi la Sistem> Configurare> Avansat> Sistem.

Sub Stocați configurația pentru medii , selectați Baza de date media din listă și faceți clic pe Sincroniza.

Acum mergeți la panoul de administrare Magento 2, Magazine> Configurare> Avansat> Sistem.

Sub Configurarea de stocare pentru medii, selectează media de date, și faceți clic pe Sincroniza.

Aceasta va avea grijă de fișierele media stocate în baza de date Magento. Acum, pentru a transfera alte fișiere media, copiați întregul dosar media din directorul rădăcină Magento 1 și lipiți-l și îmbinați-l în această locație în Magento 2:

Magento 2 director rădăcină / pub / media

Un lucru foarte important pe care trebuie să-l rețineți este că în timpul copierii nu ar trebui să înlocuiți fișierul .htaccess. Este mai bine să faceți o copie de siguranță a fișierului .htaccess înainte de transferul media, astfel încât să nu înlocuiți accidental fișierul.

Pentru a transfera fișierele tematice ale magazinului dvs., trebuie să transferați fișierele .phtml, js, css și xml în locațiile corespunzătoare din Magento 2. Structura folderului este diferită de Magento 1. Acest articol din documentul Magento dev va da aveți o imagine de ansamblu asupra structurii noului folder tematic al Magento 2.

Pe lângă transferarea manuală a fișierelor tematice, va trebui, de asemenea, să creați manual acreditările pentru serviciile Web REST și SOAP pe care le utilizați pe site-ul dvs. De asemenea, va trebui să recreați utilizatorii administrativi și să setați privilegiile de acces.

Post-migrație pași

Acum că ați finalizat toți pașii necesari pentru Migrație, iată câteva lucruri de făcut pentru a avea un site Magento 2 pe deplin funcțional.

  • Trebuie să puneți Magento 1 în modul de întreținere și să începeți o lucrare Magento 2 cron.
  • Îndepărtați cache-urile Magento 2 și re-indexați toți indicii.
  • Schimbați DNS pentru a indica spre Magento 2, pentru a redirecționa traficul către noul site.

Dacă ați făcut-o până acum, felicitări! Magazinul dvs. Magento 2 este gata. Timpul și efortul pe care l-ați pus pentru a transfera site-ul la versiunea mai nouă Magento vor fi într-adevăr merită. Această nouă versiune de Magento oferă performanțe sporite și scalabilitate, noi caracteristici pentru creșterea ratelor de conversie și îmbunătățirea agilității și a productivității afacerii. Site-ul dvs. este gata să meargă la nivelul următor cu aceste funcții îmbunătățite.

Cod