Magento 2.1 重新索引问题

Magento 2.1 re-indexing issue

我正在使用 Magento 2.1

我有一个问题,在我重新索引产品后隐藏起来。我确实有解决办法,但这不好。让我解释一下我是如何重现错误的,然后我将如何修复。

  1. 通过 emagic 7000 产品上传
  2. 我注意到加载产品时前端看起来不错
  3. 上传产品后自动索引(或我运行索引命令)
  4. 产品对前端隐藏 ( IE 1 页应该有 1,500 个产品,但现在只显示 500 个 另一个页面应该有 6,000 个产品,但现在只显示 500 个 并且显示所有记录有 7,500 条的页面现在只显示 500)

我可以通过执行以下操作来解决此问题 1. 运行 这个 sql 查询禁用所有产品 更新 catalog_product_entity_int 设置值 =0 WHERE attribute_id =94

  1. 运行 重新索引命令 php bin/magento indexer:reindex

  2. 运行 sql查询启用所有产品 UPDATE catalog_product_entity_int SET value =1 WHERE attribute_id =94

  3. 运行 重新索引命令 php bin/magento indexer:reindex

  4. 运行这个命令(两次) php bin/magento cron:run php bin/magento cron:run

然后所有产品再次显示。但是如果我 运行 再次重新索引,我必须重复步骤 i 到 5 才能再次工作,这不是很好。

我还注意到以下 2 个命令导致了问题,所有其他索引命令 运行 单独导致没有问题 php bin/magento indexer:reindex catalog_category_product php bin/magento indexer:reindex catalog_product_category

我怎样才能永久解决这个问题?任何想法

我在完全清除所有产品(截断 MYSQL)后解决了这个问题 我做了以下两个步骤

  1. 按照下面的详细信息 link 截断所有表,以删除为 re-import 准备的所有数据。显然先将数据备份到 re-import

  2. 检查了 mysql 并截断了 mysql 中以 'catalog_' 开头的所有表,除了 catalog_product_link_type

3.logeed in as ssh 和 运行 以下命令 CD public_html php -f bin/magento indexer:reindex

删除静态视图文件目录和编译目录

rm -rf var/di mkdir var/di rm -rf var/generation mkdir var/generation CD pub/static rm -rf_cache rm -rf deployed_version.txt rm -rf 前端 rm -rf _requirejs rm -rf adminhtml 光盘.. 光盘.. php -f bin/magento setup:upgrade php bin/magento setup:di:compile php bin/magento setup:static-内容:部署 php -f bin/magento cache:clean php -f bin/magento cache:flush php -f bin/magento indexer:reindex

  1. 然后我删除了所有与产品相关的图片(再次备份 re-import) rm -rf /pub/media/catalog/product mkdir /pub/media/catalog/product

这对我有用,刚开始清除数据库并为 re-import

准备好所有文件