Magento 2 Reindexing - Một hoặc nhiều bộ chỉ mục không hợp lệ. Hãy chắc chắn rằng công việc định kỳ Magento của bạn đang chạy


78

Tôi không thể tìm ra cách thực hiện reindexing trong các hành động hàng loạt trên magento 2.

Có vẻ như bạn cần chạy nó từ cronjob. Có cách nào khác để reindex dữ liệu trong magento 2 từ phụ trợ hoặc dòng lệnh giống như trước đây trong Magento 1.x ( php shell/indexer.php -reindexall) không?

nhập mô tả hình ảnh ở đây


xin lỗi nhưng tôi là người mới ở Magento Tôi đã cài đặt Magento cục bộ vào XAMPP, tôi đang sử dụng Windows 7 và tôi muốn hỏi tôi có thể làm gì ?? tôi nhận được tin nhắn tương tự,
Alex4842

1
@ Alex4842 điều tương tự ở đây. Chạy Magento trên Win 10. Tìm thấy cái này: magento.stackexchange.com/questions/111132/iêu
Mohammed Joraid

Bạn có thể reindex trong phần phụ trợ thông qua hướng dẫn này mageplaza.com/kb/how-reindex-magento-2.html
Nói sự thật

Câu trả lời:


117

để reindex trong magento 2, đi đến CLI và sau đó vào thư mục gốc của bản cài đặt magento của bạn và chạy lệnh dưới đây:

php bin/magento indexer:reindex



Đối với những người đang sử dụng mac, họ có thể thay đổi thư mục thành install_dir / bin và viết lệnh này ./magento indexer :: reindex
Harit

2
Nó nói rằng bạn có thể chấp nhận trong 3 phút xD
Harit


Tôi đang gặp lỗi phân tích cú pháp trong /Appluggest/MAMP/htdocs/Magento-CE-2.1.2-2016-10-11-11-16-47/vendor/magento/framework/ObjectManager/Factory/ AbTHERFactory.php trên dòng 93
Oli Tuck

22

Chạy lệnh này trong CLI của bạn

Bộ lập chỉ mục bin bin / magento: reindex

và nếu bạn muốn reindex chỉ một người lập chỉ mục thì hãy viết lệnh sau:

Bộ lập chỉ mục bin bin / magento: reindex indexer_name.

nơi indexer_namecó thể được tìm thấy bằng cách gõ lệnh sau:

Chỉ mục php bin / magento: thông tin


6

Đây là cách bạn có thể hoàn thành công việc bằng cách sử dụng các lệnh lập chỉ mục Magento 2 CLI

Nhận vào tệp lệnh Magento CLI có sẵn trong thư mục Magento / bin cd magento_folder / bin và chạy trực tiếp comamnd của bạn bằng magento trong terminal hoặc putty.

Đây là cách nó sẽ hoạt động để lập chỉ mục trong Magento 2

Nhận danh sách các chỉ mục có sẵn trong Magento 2

Chỉ mục php bin / magento: thông tin

Cách kiểm tra trạng thái của bộ chỉ mục

Lệnh sau sẽ giúp bạn có trạng thái của tất cả các bộ chỉ mục cho dù lập chỉ mục là bắt buộc hay sẵn sàng.

Trình lập chỉ mục bin bin / magento: trạng thái

Bạn cũng có thể kiểm tra trạng thái của trình lập chỉ mục cá nhân: giả sử tôi muốn kiểm tra trạng thái của catalog_carget_product

Trình lập chỉ mục bin bin / magento: danh mục trạng thái_carget_product

Cách reindex tất cả các chỉ mục có sẵn trong Magento 2

Bộ lập chỉ mục bin bin / magento: reindex

Trong trường hợp bạn điền vào giới hạn bộ nhớ, hãy thử lệnh này

php bin / magento -dmemory_limit = Bộ chỉ mục magento 2G: reindex


4

Sử dụng Magento CLI. Chạy php bin/magento indexer:reindextừ thư mục gốc của dự án.


1

Nếu bất kỳ chỉ mục nào đang lặp Bạn có thể đặt lại tất cả chỉ mục bằng cách sử dụng
indexer:reset
sau đó sử dụng reindex bình thường


1

Để Reindex từ dấu nhắc lệnh chạy bên dưới lệnh:

php bin/magento indexer:reindex

Lệnh trên nên được chạy từ thư mục gốc magento


1

Trên CLI gốc Magento, chạy lệnh bên dưới

php bin/magento indexer:reset

Sau đó chạy lệnh dưới đây

php bin/magento indexer:reindex

0

Giải pháp thay thế thêm php bin/magento indexer:reindexlệnh tại cronjob.

Tôi đã làm theo điều này và nó đã được làm việc tại hệ thống của tôi


0

giải quyết với php bin/magento indexer:reindex


0

a. Reindex từ quản trị viên Magento * đôi khi không phải tất cả các bộ chỉ mục đều được lập chỉ mục lại bằng cách sử dụng reindex của quản trị viên> kiểm tra cũng reindex qua SSH

  1. Đi đến Hệ thống> Quản lý chỉ mục và kiểm tra trạng thái của người lập chỉ mục
  2. Chọn các mục được đánh dấu là "Yêu cầu Reindex" và đi đến Hành động> Cập nhật theo lịch

Điều này sẽ kích hoạt một reindex cho các chỉ mục được chọn.

Quan trọng: Đôi khi không phải tất cả các bộ chỉ mục đều được lập chỉ mục lại bằng cách sử dụng reindex của quản trị viên ngay cả khi thời gian và ngày được hiển thị như được cập nhật trong quản trị viên magento. Chúng tôi khuyên bạn nên kiểm tra lại quy trình reindex bằng phương pháp reindex SSH / CLI được trình bày dưới đây.

Chế độ Reindex: Bạn có thể đặt các bộ chỉ mục của mình là "Cập nhật khi lưu" và các thực thể cửa hàng sẽ được lập chỉ mục khi lưu cấu hình quản trị viên hoặc là "Cập nhật theo lịch biểu" và các bộ chỉ mục sẽ được lập lại liên tục (mặc định một lần / ngày). Để "Cập nhật theo lịch biểu" hoạt động tốt, hãy đảm bảo các công việc định kỳ của bạn đang chạy chính xác trên máy chủ của bạn. Đối tác lưu trữ hoặc nhóm phát triển của bạn có thể giúp bạn với cấu hình công việc định kỳ.

nhập mô tả hình ảnh ở đây

Làm xong!

b. Reindex thông qua SSH / CLI (được khuyến nghị)

  1. Kết nối với cài đặt Magento 2 của bạn trong thư mục gốc của dự án. (thường là trong public_html hoặc theo yourmagentoinstallation.com/html)

  2. Reindex tất cả các bộ chỉ mục Magento 2 bằng cách sử dụng lệnh dưới đây:

php bin/magento indexer:reindex

Bạn sẽ nhận được một kết quả tương tự như được trình bày dưới đây:

Chỉ số lưới cấu hình thiết kế đã được xây dựng lại thành công trong 00:00:00

Chỉ số lưới khách hàng đã được xây dựng lại thành công trong 00:00:00

Chỉ mục Sản phẩm đã được xây dựng lại thành công trong 00:00:00

Chỉ mục danh mục sản phẩm đã được xây dựng lại thành công trong 00:00:00

Chỉ số giá sản phẩm đã được xây dựng lại thành công trong 00:00:01

Chỉ số EAV của sản phẩm đã được xây dựng lại thành công trong 00:00:01

Chỉ mục Tìm kiếm Danh mục đã được xây dựng lại thành công trong 00:00:01

Chỉ số chứng khoán đã được xây dựng lại thành công trong 00:00:00

Danh mục quy tắc Chỉ mục sản phẩm đã được xây dựng lại thành công trong 00:00:01

Danh mục Quy tắc sản phẩm đã được xây dựng lại thành công trong 00:00:00

nhập mô tả hình ảnh ở đây

  1. Kiểm tra trạng thái của các bộ chỉ mục và xác định các bộ chỉ mục vẫn cần được giới thiệu lại riêng lẻ, đôi khi reindex chung không hoạt động cho tất cả các bộ chỉ mục

    php bin/magento indexer:status

Bạn sẽ nhận được một kết quả tương tự như được trình bày dưới đây:

Thiết kế lưới cấu hình: Sẵn sàng

Lưới khách hàng: Sẵn sàng

Danh mục sản phẩm: Sẵn sàng

Danh mục sản phẩm: Sẵn sàng

Giá sản phẩm: Sẵn sàng

Sản phẩm EAV: Sẵn sàng

Tìm kiếm danh mục: Sẵn sàng

Chứng khoán: Sẵn sàng

Danh mục quy tắc sản phẩm: Yêu cầu Reindex

Quy tắc sản phẩm Catalogue: Sẵn sàng

nhập mô tả hình ảnh ở đây

  1. Hiển thị danh sách các bộ chỉ mục và id chỉ mục tương ứng cần được sử dụng cho chỉ mục lại cá nhân.

    php bin/magento indexer:info

Bạn sẽ nhận được một kết quả tương tự như được trình bày dưới đây:

design_config_grid Lưới cấu hình thiết kế

Khách hàng_grid Lưới khách hàng

Catalog_carget_product Danh mục sản phẩm

Catalog_product_c Category Danh mục sản phẩm

catalog_product_price Giá sản phẩm

catalog_product_attribution EAV sản phẩm

catalogsearch_fulltext Tìm kiếm danh mục

cataloginventory_stock Cổ phiếu

Danh mục sản phẩm Quy tắc danh mục

Danh mục sản phẩm Catalogrule_product

nhập mô tả hình ảnh ở đây

  1. Reindex mỗi bộ chỉ mục có trạng thái "Yêu cầu Reindex" bằng các lệnh bên dưới

    php bin/magento indexer:reindex [catalog_category_flat]

Thí dụ: php bin/magento indexer:reindex catalogrule_rule

php bin/magento indexer:reindex design_config_grid customer_grid
php bin/magento indexer:reindex catalog_category_product
php bin/magento indexer:reindex catalog_product_category
php bin/magento indexer:reindex catalog_product_price
php bin/magento indexer:reindex catalog_product_attribute
php bin/magento indexer:reindex catalogsearch_fulltext
php bin/magento indexer:reindex cataloginventory_stock
php bin/magento indexer:reindex catalogrule_rule
php bin/magento indexer:reindex catalogrule_product
  1. Kiểm tra lại trạng thái của các bộ chỉ mục bằng cách sử dụng lệnh từ bước 2, bây giờ tất cả các bộ chỉ mục sẽ là "Sẵn sàng".

Làm xong!


0

Đôi khi để làm cho nó dễ dàng, bạn có thể muốn lập chỉ mục lại trực tiếp từ quản trị viên mà không liên quan đến cron (đặc biệt là nếu bạn chưa thiết lập công việc cron của mình và trang web vẫn đang được phát triển). Trong những trường hợp như vậy, bạn có thể sử dụng tiện ích mở rộng miễn phí Admin Reindex [M2] cho phép bạn reindex từ quản trị viên.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.