停止Magento索引过程

时间:2010-11-03 09:33:59

标签: magento import indexing

如何停止索引编制过程?我已经导入了15,000个产品并开始编制索引,但现在它仍然处理“类别搜索索引”。它已停留在处理两天了,我怎样才能停止索引过程?

任何帮助将不胜感激,谢谢你。

3 个答案:

答案 0 :(得分:10)

当Magento开始为“索引管理”列表中的每个项目编制索引时,它将“index_process”表的相关整个“status”字段设置为“working”。如果在索引过程中发生错误,脚本将停止并且状态仍为“正常”。因此,“处理”图像会在“索引管理”页面上挂起。当然,没有办法确保索引过程仍未运行,但检查服务器的进程列表(或残酷的重启或您的apache)。

我知道解决此问题的唯一智能方法是找出导致此错误的原因并进行修复。您可以通过从shell运行索引并查找输出来完成此操作。这是命令:

php shell/indexer.php reindexall

如果您没有SSH访问权限,也可以尝试从服务器的错误日志中找到此错误。

如果您只想删除“处理”图像,可以运行以下MYSQL查询:

UPDATE `index_process` SET `status` = 'pending' WHERE `status` = 'working'

然而,这不会解决问题,只会隐藏输出。

答案 1 :(得分:3)

可能最简单的方法是重启Apache。它将优雅地关闭任何打开的访问者连接,并应终止PHP进程。

---------编辑----------

数据库中有一组看起来与索引index_processindex_process_event相关的表。您可以尝试将相关记录的状态恢复为待处理状态,然后重试......

答案 2 :(得分:1)

请记住,如果您使用与当前使用的用户不同的用户运行magento(www-data vs mySshLoginUser),您可能会对锁文件的权限问题敞开大门。如果您手动运行shell索引器,那些锁定文件将属于您的ssh用户。

最糟糕的情况是,删除var / locks / *中的那些锁定文件并尝试它。