Migrare i dati
Prima di iniziare, effettua le seguenti operazioni di preparazione:
- Accedi al tuo server applicazione come file system proprietario.
- Passare alla directory di installazione del applicazione o assicurarsi che sia aggiunto al sistema
PATH
.
Per ulteriori informazioni, consulta la sezione relativa ai primi passaggi .
Eseguire il comando di migrazione dei dati
Per avviare la migrazione dei dati, esegui:
bin/magento migrate:data [-r|--reset] [-a|--auto] {<path to config.xml>}
Dove:
-
[-a|--auto]
è un argomento facoltativo che impedisce l'interruzione della migrazione quando vengono rilevati errori di controllo dell'integrità. -
[-r|--reset]
è un argomento facoltativo che avvia la migrazione dall'inizio. Puoi usare questo argomento per verificare la migrazione. -
{<path to config.xml>}
è il percorso assoluto del file system perconfig.xml
; questo argomento è obbligatorio
In questo passaggio, Data Migration Tool crea tabelle e trigger aggiuntivi per le tabelle di migrazione nel database Magento 1. Sono utilizzati nel passaggio di migrazione incrementale/delta. Le tabelle aggiuntive contengono informazioni sui record modificati dopo l'esecuzione finale della migrazione. I trigger di database vengono utilizzati per popolare queste tabelle aggiuntive, pertanto se viene eseguita una nuova operazione sulla tabella particolare (un record viene aggiunto/modificato/rimosso), questi trigger del database salvano le informazioni su questa operazione nella tabella aggiuntiva. Quando eseguiamo un processo di migrazione delta, controlla Data Migration Tool queste tabelle per i record non elaborati ed esegue la migrazione dei contenuto necessari nel database Magento 2.
Ogni nuova tabella contiene:
m2_cl
prefissoINSERT
,UPDATE
,DELETE
trigger di evento.
Ad esempio, per le sales_flat_order
Data Migration Tool crea:
-
m2_cl_sales_flat_order
tavolo:code language-sql CREATE TABLE `m2_cl_sales_flat_order` ( `entity_id` int(11) NOT NULL COMMENT 'Entity_id', `operation` text COMMENT 'Operation', `processed` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'Processed', PRIMARY KEY (`entity_id`) ) COMMENT='m2_cl_sales_flat_order';
-
trg_sales_flat_order_after_insert
,trg_sales_flat_order_after_update
,trg_sales_flat_order_after_delete
attiva:code language-sql DELIMITER ;; CREATE TRIGGER `trg_sales_flat_order_after_insert` AFTER INSERT ON `sales_flat_order` FOR EACH ROW BEGIN INSERT INTO m2_cl_sales_flat_order (`entity_id`, `operation`) VALUES (NEW.entity_id, 'INSERT')ON DUPLICATE KEY UPDATE operation = 'INSERT'; END ;; DELIMITER ;; CREATE TRIGGER `trg_sales_flat_order_after_update` AFTER UPDATE ON `sales_flat_order` FOR EACH ROW BEGIN INSERT INTO m2_cl_sales_flat_order (`entity_id`, `operation`) VALUES (NEW.entity_id, 'UPDATE') ON DUPLICATE KEY UPDATE operation = 'UPDATE'; END ;; DELIMITER ;; CREATE TRIGGER `trg_sales_flat_order_after_delete` AFTER DELETE ON `sales_flat_order` FOR EACH ROW BEGIN INSERT INTO m2_cl_sales_flat_order (`entity_id`, `operation`) VALUES (OLD.entity_id, 'DELETE')ON DUPLICATE KEY UPDATE operation = 'DELETE'; END ;;
--reset
. In tal caso, si consiglia di ripristinare il dump del database di Magento 2 per evitare la duplicazione dei dati migrati in precedenza.Possibili errori di coerenza
Durante l'esecuzione, è possibile segnalare Data Migration Tool incoerenze tra i database Magento 1 e Magento 2 e visualizzare messaggi like quanto segue:
Source documents are missing: <EXTENSION_TABLE_1>,<EXTENSION_TABLE_2>,...<EXTENSION_TABLE_N>
Destination documents are missing: <EXTENSION_TABLE_1>,<EXTENSION_TABLE_2>,...<EXTENSION_TABLE_N>
Source documents are not mapped: <EXTENSION_TABLE_1>,<EXTENSION_TABLE_2>,...<EXTENSION_TABLE_N>
Destination documents are not mapped: <EXTENSION_TABLE_1>,<EXTENSION_TABLE_2>,...<EXTENSION_TABLE_N>
Source fields are missing. Document: <EXTENSION_TABLE>. Fields: <FIELD_1>,<FIELD_2>...<FIELD_N>
Destination fields are missing. Document: <EXTENSION_TABLE>. Fields: <FIELD_1>,<FIELD_2>...<FIELD_N>
Source fields are not mapped. Document: <EXTENSION_TABLE>. Fields: <FIELD_1>,<FIELD_2>...<FIELD_N>
Destination fields are not mapped. Document: <EXTENSION_TABLE>. Fields: <FIELD_1>,<FIELD_2>...<FIELD_N>
Mismatch of data types. Source document: <EXTENSION_TABLE>. Fields: <FIELD_1>,<FIELD_2>...<FIELD_N>
Mismatch of data types. Destination document: <EXTENSION_TABLE>. Fields: <FIELD_1>,<FIELD_2>...<FIELD_N>
Incompatibility in data. Source document: <EXTENSION_TABLE>. Field: <FIELD>. Error: <ERROR_MESSAGE>
Incompatibility in data. Destination document: <EXTENSION_TABLE>. Field: <FIELD>. Error: <ERROR_MESSAGE>
Per ulteriori informazioni e consigli, vedere la sezione Risoluzione dei problemi di questa guida.