Não foi possível iniciar o processo de indexação – Magento 1

O que fazer quando ao tentar reindexar os índices no Magento é exibida a seguinte mensagem: Não foi possível iniciar o processo de indexação

Mensagem do erro no Painel ocorre em: Sistema / Gerenciar Índices

print do erro

Possíveis motivos que causam o erro

  • Baixo valor para o limite de memória e tempo máximo de execução no arquivo Php.ini
  • Sem escrita Permissão para pasta / var
  • Muitos produtos ou exibições da loja, o processo de re-indexação não pode ser feito através do backend do Magento
  • Tabelas corrompidas no banco de dados
  • Utilização das opções “Use Flat Catalog Category” e “Use Flat Catalog Product”

Reindexando via comando

Conecte via SSH, execute abaixo do comando:

– Estes são comandos individuais para re-indexação:

  • php shell / indexer.php –reindex catalog_category_flat
  • php shell / indexer.php –reindex catalog_category_product
  • php shell / indexer.php –reindex catalogsearch_fulltext

OU execute todas as re-indexações:

  • php shell / indexer.php –reindexall

Em seguida, limpe o cache do Magento.

Segunda alternativa

Crie um arquivo com o conteúdo abaixo na raiz da sua instalação Magento.

Vamos tentar reindexar todos os índices do Magento via PHP.

<?php
require_once("app/Mage.php");
Mage::app('default');
Mage::app()->setCurrentStore(Mage_Core_Model_App::ADMIN_STORE_ID);
try{
$indexerByShell = Mage::getBaseDir().'/shell/indexer.php';
if(file_exists($indexerByShell))  
{ 
$indexListByCode = array(
"catalog_product_attribute",
"catalog_product_price",
"catalog_product_flat",
"catalog_category_flat",
"catalog_category_product",
"catalog_url",
"catalogsearch_fulltext",
"cataloginventory_stock"
);
//reindex using magento command line  
foreach($indexListByCode as $indexer)  
{  
echo "reindex $indexer <br/> ";  
exec("php $indexerByShell --reindex $indexer");  
} 
}
}catch(Exception $e){
echo $e;
}
?>

Aumente o limite de memória disponível para o PHP

Arquivo php.ini

Localize o arquivo php.ini usado por seu servidor web.

Edite o arquivo php.ini e adicione/altere:

memory_limit = 64M;

Após feita a alteração, reinicie o Apache.

Index.php

Edite o arquivo index.php e adicione no inicio do arquivo:

ini_set('memory_limit', '64M');

Pelo arquivo .htaccess

Adicione no final do arquivo:

php_value memory_limit 64M

 

 

Dúvidas? Faça um comentário logo abaixo ou envie uma mensagem clicando aqui.

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *