一、Solr是什么?
序号 | 简介 |
---|---|
1 | Solr它是一种开放源码的、基于 Lucene Java 的搜索服务器,易于加入到 Web 应用程序中 |
2 | 安装和配置简易,而且附带了一个基于 HTTP 的管理界面。已经在众多大型的网站中使用,较为成熟和稳定 |
3 | Solr 包装并扩展了 Lucene,所以Solr的基本上沿用了Lucene的相关术语。更重要的是,Solr 创建的索引与 Lucene 搜索引擎库完全兼容 |
4 | 通过对Solr 进行适当的配置,某些情况下可能需要进行编码,Solr 可以阅读和使用构建到其他 Lucene 应用程序中的索引 |
二、Solr优点
①高级的全文搜索功能;
②专为高通量的网络流量进行的优化;
③基于开放接口(XML和HTTP)的标准;
④综合的HTML管理界面;
⑤可伸缩性-能够有效地复制到另外一个Solr搜索服务器;
⑥使用XML配置达到灵活性和适配性;
⑦可扩展的插件体系。
三、Solr安装
依赖环境centOS7 及solr-7.7.2.tgz
1.先在/usr/local下新建solr目录
cd /usr/local
mkdir solr
2.在/usr/local/solr文件夹里新建一个tomcat目录
mkdir /usr/local/solr/tomcat
3.下载tomcat并解压tomcat
cd /usr.local/solr/tomcat
wget https://www-eu.apache.org/dist/tomcat/tomcat-7/v7.0.96/bin/apache-tomcat-7.0.96.tar.gz
tar -zxvf apache-tomcat-7.0.96.tar.gz
mv apache-tomcat-7.0.96 tomcat
4..把solr的压缩包上传到服务器后并解压,把solr-7.7.2/dist/solr-7.7.2.war包部署到tomcat下的webapps目录下。并改名为solr.war
cd /usr/local/solr
wget https://www-eu.apache.org/dist/lucene/solr/7.7.2/solr-7.7.2.tgz
cp /usr/local/solr-7.7.2/dist/solr-7.7.2.war /usr/local/solr/tomcat/webapps/solr.war
5.解压war包。启动tomcat自动解压。然后关闭tomcat,删除war包
cd /usr/local/solr/tomcat
./bin/startup.sh
./bin/shutdown.sh
rm -rf /usr/local/solr/tomcat/webapps/solr.war
6.把solr-7.1.0/example/lib/ext 目录下所有的jar包复制到solr工程中
cd /usr/local/solr-7.7.2/example/lib/ext
cp * /usr/local/solr/tomcat/webapps/solr/WEB-INF/lib/
7.创建solrhome文件夹,该文件夹用来存放solr服务器所有配置文件。将/root/solr-4.10.3/example中的solr文件夹拷贝至solrhome
mkdir -p /usr/local/solr/solrhome
cp -r /usr/local/solr-7.7.2/example/solr /usr/local/solr/solrhome
8.在solr工程中的web.xml文件中solrhome的位置添加下面代码
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>/usr/local/solr/solrhome</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
注:默认此段被注释了需要解开注释,env-entry-value为solrhome路径
9.在solrhome目录下建立文件solr.xml,内容:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<solr>
</solr>
10.启动tomcat并访问—-http:192.168.25.154:8080/solr/
四、Solr配置(IK中文分析器设置)
1、把IKAnalyzer2012FF_u1.jar添加到solr工程的lib目录下(IKAnalyzer2012FF_u1.jar自行下载)
cp IKAnalyzer2012FF_u1.jar /usr/local/solr/tomcat/webapps/solr/WEB-INF/lib/
2、新建classes文件夹并把扩展词典、配置文件放到solr工程的WEB-INF/classes目录下。
mkdir -p /usr/local/solr/tomcat/webapps/solr/WEB-INF/classes
cp IKAnalyzer.cfg.xml ext_stopword.dic mydict.dic /usr/local/solr/tomcat/webapps/solr/WEB-INF/classes
注:IKAnalyzer.cfg.xml,ext_stopword.dic,mydict.dic文件一搜一堆
3.在solrhome/collection1/conf/schema.xml中配置filedType
vim /usr/local/solr/solrhome/collection1/conf/schema.xml
<!--添加如下内容-->
<fieldType name="text_ik" class="solr.TextField">
<analyzer class="org.wltea.analyzer.lucene.IKAnalyzer"/>
</fieldType>
<field name="item_title" type="text_ik" indexed="true" stored="true"/>
<field name="item_price" type="long" indexed="true" stored="true"/>
<field name="item_category_name" type="string" indexed="true" stored="true" />
<field name="item_keywords" type="text_ik" indexed="true" stored="false" multiValued="true"/>
<copyField source="item_title" dest="item_keywords"/>
<copyField source="item_category_name" dest="item_keywords"/>
4.重启tomcat完成安装配置