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 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 Magento 2.
Cada nova tabela contém:
- Prefixo
m2_cl
INSERT
,UPDATE
,DELETE
disparadores 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_delete
acionadores: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 dump 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.