Alguém está tendo esse problema?
migração de dados> Etapa EAV
SQLSTATE [23000]: Violação de restrição de integridade: 1062 Entrada duplicada '1-Migration_Default' para a chave 'EAV_ATTRIBUTE_SET_ENTITY_TYPE_ID_ATTRIBUTE_SET_NAME'
Alguém está tendo esse problema?
migração de dados> Etapa EAV
SQLSTATE [23000]: Violação de restrição de integridade: 1062 Entrada duplicada '1-Migration_Default' para a chave 'EAV_ATTRIBUTE_SET_ENTITY_TYPE_ID_ATTRIBUTE_SET_NAME'
Respostas:
Este erro ocorre quando a ferramenta de migração falha na transferência de dados (por exemplo, devido a violações de integridade) sem retroceder e é executada novamente. Ele tenta criar o conjunto de atributos "Migration_Default" e falha, porque já está presente no banco de dados.
O que você precisa fazer é:
1) Restaure seu banco de dados Magento 2.0 a partir de uma cópia que você (espero) tenha feito antes de executar a ferramenta de migração.
2) Execute a ferramenta de migração novamente e verifique o primeiro erro em que ela falha. No meu caso, foi:
[PDOException]
SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'home-1' for key 'URL_REWRITE_REQUEST_PATH_STORE_ID'
3) Corrija o problema (tive que remover manualmente uma linha no banco de dados).
Repita as etapas até que você apague todos os erros e veja a doce mensagem:
Migration completed
Encontrei esta solução que resolveu esse problema para mim https://github.com/magento/data-migration-tool/issues/235#issuecomment-321923437
A solução é renomear todos os valores que contêm o nome "Padrão" no campo "attribute_value_name" da tabela eav_attribute_set para "Default_x" no banco de dados Magento 1 e executar a migração do zero.
No meu caso, havia 9 registros com o nome "Padrão". Então, renomeei-os para Default_1 para Default_9 e funcionou perfeitamente!
EAV_ATTRIBUTE_GROUP_ATTRIBUTE_SET_ID_ATTRIBUTE_GROUP_CODE
e resolvi isso por uma abordagem semelhante:UPDATE eav_attribute_group SET attribute_group_name = CONCAT(attribute_group_name, "_", attribute_set_id) WHERE attribute_group_name = "General";
No meu caso : aconteceu comigo e eu tive que importar um backup do meu banco de dados magento 2 antes de recarregar a migração.
No seu caso : talvez você precise recarregar a migração de dados pela segunda vez.
Para corrigir esse problema,
Você pode fazer isso através do aplicativo ou interface de consulta SQL.
DELETE FROM eav_attribute_set WHERE attribute_set_name != 'Default';
Verifique com o banco de dados de migração Magento 2. Às vezes, não alteramos o nome do banco de dados na ferramenta de migração de dados.
Reinstale a nova instância do Magento e adicione corretamente o nome do banco de dados na ferramenta de migração de dados
A Ferramenta de Migração de Dados não recebe dados da fonte no utf8.
Aqui está uma solução simples para esse problema:
Editar: vendor/magento/data-migration-tool/src/Migration/ResourceModel/Adapter/Mysql.php
public function __construct(
\Magento\Framework\DB\Adapter\Pdo\MysqlFactory $adapterFactory,
\Magento\Framework\DB\Ddl\TriggerFactory $triggerFactory,
array $config
) {
$config['initStatements'] = 'SET NAMES utf8'; // +
$configData['config'] = $config;
$this->resourceAdapter = $adapterFactory->create($configData);
$this->setForeignKeyChecks(0);
$this->triggerFactory = $triggerFactory;
}
Na minha experiência, existem dados de amostra instalados. Então, eu fiz os seguintes passos.
Então, eu posso migrar.
Corrigido meu problema com o seguinte sql:
Violação de restrição de integridade: 1062 Entrada duplicada '4-Imagens' para chave - Magento 2
delete from eav_attribute_group WHERE attribute_group_name = 'Images';
Então tente algo
delete from eav_attribute_group WHERE attribute_group_name = 'Home';