Migrar dados
Antes de começar, siga as etapas abaixo para se preparar:
- Faça logon no servidor de aplicativos como o proprietário do sistema de arquivos.
- Altere para o diretório de instalação do aplicativo ou verifique se ele foi adicionado ao sistema
PATH.
Consulte a seção primeiras etapas para obter mais detalhes.
Executar o comando de migração de dados
Para começar a migrar dados, execute:
bin/magento migrate:data [-r|--reset] [-a|--auto] {<path to config.xml>}
Onde:
-
[-a|--auto]é um argumento opcional que impede que a migração pare quando encontrar erros de verificação de integridade. -
[-r|--reset]é um argumento opcional que inicia a migração desde o início. Você pode usar esse argumento para testar a migração. -
{<path to config.xml>}é o caminho absoluto do sistema de arquivos paraconfig.xml; este argumento é obrigatório
Nesta etapa, o Data Migration Tool cria tabelas e acionadores adicionais para as tabelas de migração no banco de dados do Magento 1. Eles são usados na etapa de migração incremental/delta. Tabelas adicionais contêm informações sobre registros alterados após a execução final da migração. Os gatilhos de banco de dados são usados para preencher essas tabelas extras; portanto, se uma nova operação estiver sendo executada na tabela específica (um registro é adicionado/modificado/removido), esses gatilhos de banco de dados salvarão informações sobre essa operação na tabela extra. Quando executamos um processo de migração delta, o Data Migration Tool verifica se há registros não processados nessas tabelas e migra o conteúdo necessário para o banco de dados do Magento 2.
Cada nova tabela contém:
- Prefixo
m2_cl INSERT,UPDATE,DELETEdisparadores de eventos.
Por exemplo, para sales_flat_order, Data Migration Tool cria:
-
Tabela
m2_cl_sales_flat_order: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_deleteacionadores: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. Nesse caso, recomendamos que você restaure o despejo do banco de dados do Magento 2 para evitar a duplicação de dados migrados anteriormente.Possíveis erros de consistência
Durante a execução, o Data Migration Tool pode relatar inconsistências entre os bancos de dados Magento 1 e Magento 2 e exibir mensagens como as seguintes:
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>
Consulte a seção Solução de problemas deste guia para obter mais informações e recomendações.