Magento 2安装ElasticSearch 6.x搜索引擎及ElasticSearch Module ElasticSuite
ElasticSearch Server 安装步骤
- 安装jre环境
- Debian/Ubuntu/Other APT based distros :
sudo apt-get install openjdk-8-jre
- 安装ElasticSearch
- Install via APT
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
sudo apt-get install apt-transport-https
echo "deb https://artifacts.elastic.co/packages/6.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-6.x.list
- 安装ElasticSearch
sudo apt-get update && sudo apt-get install elasticsearch
- 启动ElastivSearch
- 先给个权限
sudo chmod 777 /var/log/elasticsearch/*
sudo service elasticsearch start
- 测试是否启动成功
curl localhost:9200
- 查看安装目录
curl "localhost:9200/_nodes/settings?pretty=true"
- 进入安装目录
cd /usr/share/elasticsearch
- 安装插件
bin/elasticsearch-plugin install analysis-phonetic
bin/elasticsearch-plugin install analysis-icu
- 重启Elastivserach
sudo service elasticsearch restart
至此,我们已经成功的安装了ElasticSearch搜索引擎
ElasticSearch Module 安装步骤
- Composer 安装
composer require smile/elasticsuite
- 启用module并且运行ElasticSuite
bin/magento module:enable Smile_ElasticsuiteCore Smile_ElasticsuiteCatalog Smile_ElasticsuiteSwatches Smile_ElasticsuiteCatalogRule Smile_ElasticsuiteVirtualCategory Smile_ElasticsuiteThesaurus Smile_ElasticsuiteCatalogOptimizer Smile_ElasticsuiteTracker
- 配置ElasticSuite
bin/magento config:set -l smile_elasticsuite_core_base_settings/es_client/servers localhost:9200
bin/magento config:set -l smile_elasticsuite_core_base_settings/es_client/enable_https_mode 0
bin/magento config:set -l smile_elasticsuite_core_base_settings/es_client/enable_http_auth 0
bin/magento config:set -l smile_elasticsuite_core_base_settings/es_client/http_auth_user ""
bin/magento config:set -l smile_elasticsuite_core_base_settings/es_client/http_auth_pwd ""
bin/magento app:config:import
- 运行indexer,重建索引
bin/magento index:reindex catalogsearch_fulltext
bin/magento index:reindex elasticsuite_categories_fulltext
bin/magento index:reindex elasticsuite_thesaurus
禁用ElasticSearch Module
bin/magento module:disable Smile_ElasticsuiteCore Smile_ElasticsuiteCatalog Smile_ElasticsuiteSwatches Smile_ElasticsuiteCatalogRule Smile_ElasticsuiteVirtualCategory Smile_ElasticsuiteThesaurus Smile_ElasticsuiteCatalogOptimizer Smile_ElasticsuiteTracker --clear-static-content
删除插件
- cd 到magento2 根目录下
- 禁用插件
- 用composer移除插件
composer remove mirasvit/module-search-elastic-ultimate
composer remove smile/elasticsuite
sudo apt-get --purge autoremove elasticsearch
sudo rm -rf /var/lib/elasticsearch/
sudo rm -rf /etc/elasticsearch
ElasticSuite数据库完整卸载
DELETE FROM setup_module where module='Smile_ElasticsuiteCore';
DELETE FROM setup_module where module='Smile_ElasticsuiteCatalog';
DELETE FROM setup_module where module='Smile_ElasticsuiteCatalogRule';
DELETE FROM setup_module where module='Smile_ElasticsuiteSwatches';
DELETE FROM setup_module where module='Smile_ElasticsuiteCatalogOptimizer';
DELETE FROM setup_module where module='Smile_ElasticsuiteThesaurus';
DELETE FROM setup_module where module='Smile_ElasticsuiteTracker';
DELETE FROM setup_module where module='Smile_ElasticsuiteVirtualCategory';
DELETE FROM eav_attribute where attribute_code='virtual_rule';
DELETE FROM eav_attribute where attribute_code='is_virtual_category';
DELETE FROM eav_attribute where attribute_code='virtual_category_root';
DELETE FROM smile_elasticsuite_optimizer;
DELETE FROM smile_elasticsuite_optimizer_search_container;
DROP TABLE smile_elasticsuite_optimizer_search_container;
DROP TABLE smile_elasticsuite_optimizer;
DROP TABLE smile_elasticsuite_relevance_config_data;
DROP TABLE smile_elasticsuite_thesaurus_expanded_terms;
DROP TABLE smile_elasticsuite_thesaurus_reference_terms;
DROP TABLE smile_elasticsuite_thesaurus_store;
DROP TABLE smile_elasticsuite_thesaurus;
DROP TABLE smile_virtualcategory_catalog_category_product_position;
DROP TABLE smile_elasticsuitecatalog_search_query_product_position;
DROP TABLE smile_elasticsuitecatalog_category_filterable_attribute;
ALTER TABLE catalog_eav_attribute DROP COLUMN is_displayed_in_autocomplete;
ALTER TABLE catalog_eav_attribute DROP COLUMN is_used_in_spellcheck;
ALTER TABLE catalog_eav_attribute DROP COLUMN facet_min_coverage_rate;
ALTER TABLE catalog_eav_attribute DROP COLUMN facet_max_size;
ALTER TABLE catalog_eav_attribute DROP COLUMN facet_sort_order;
ALTER TABLE catalog_eav_attribute DROP COLUMN display_pattern;
ALTER TABLE catalog_eav_attribute DROP COLUMN display_precision;
至此,整个过程就结束了,希望帮到大家。
参考
Install Server Guide
https://github.com/Smile-SA/elasticsuite/wiki/ServerConfig-6.x
Magento 2 Module Install
https://github.com/Smile-SA/elasticsuite/wiki/ModuleInstall
Document:
https://www.elastic.co/guide/en/elasticsearch/reference/current/index.html
https://mirasvit.com/docs/module-search-elastic-ultimate/current/p