linux安装solr及中文分词器详细图解说明

前言:上篇文章,博主介绍了windows安装solr的。那么我们是不是来个linux安装solr呢!那么博主这里这篇主要就是来介绍linux怎么样安装solr.首先得声明下,你必须有一定的linux的基础,如果你长时间的看博主的文章,相信你也应该具备了一些linux基础的命令。好了,废话不多说了,接下来开搞!​​​​​

本文版权归作者所有,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接出处:https://blog.csdn.net/qq_3076499,否则保留追究法律责任的权利。 如果文中有什么错误,欢迎指出。以免更多的人被误导。

如果对您有帮助 ,请多多支持.多少都是您的心意与支持,一分也是爱,再次感谢!!!

 支付宝赞赏:

记得点击下面的余额宝,红包可能要大些。

什么是 Solr?

Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果。如果还是不太了解的话,这里不再详细介绍说明了,请参考我的solr的介绍说明:https://blog.csdn.net/qq_30764991/article/details/81607116

Solr是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务器。Solr提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展,并对索引、搜索性能进行了优化。

Solr可以独立运行,运行在Jetty、Tom猫等这些容器中,Solr索引的实现方法很简单,用POST方法向Solr服务器发送一个描述Field及其内容的XML文档,Solr根据xml文档添加、删除、更新索引。Solr搜索只需发送HTTP POST请求,然后对Solr返回Xml、json等格式的查询结果进行解析,组织页面布局即可。

Solr的环境准备

Solr是java开发。需要安装jdk,安装环境Linux,需要安装Tomcat。如果环境不会装,或者没装,请参考我的linux安装jdk与tomcat的说明,具体的参考链接.

linux安装jdk:https://blog.csdn.net/qq_30764991/article/details/81190938

tomcat不需要安装也行,当你需要启动的时候,就可以,所以我这里也没有安装,因为安装之后换tomcat比较麻烦,所以需要哪个就执行哪个。但一定要上传到Linux系统当中。上传到Linux中,这里博主也不作太多的说明,如果这个也不会的话,建议你是不是选择其他行业,(这里语气有点不好,方法有很多,网上一查一大堆,这里不多说明)

,那么安装好之后就可以开始接下来的具体操作了。

Solr 各版本下载地址:http://archive.apache.org/dist/lucene/solr/  下载linux版本的tar,博主这里下载的是solr4.1的。这个版本没有具体的要求说明。你自己喜欢下载哪款下哪款。

solr的结构说明:如下图

    1. 搭建步骤

第一步:把solr 的压缩包上传到Linux系统

第二步:解压solr。[root@MiWiFi-R3-srv solr]# tar zxf solr-4.10.3.tgz.tgz   不带日志的解压,tar zxvf  是带日志的解压

解压查询是否解压成功:如下图,说明成功 

进入cd solr-4.10.3   查询如下图所示:

第三步:安装Tomcat,解压缩即可。

第四步:把solr部署到Tomcat下。图解如下:

第五步:解压缩war包。启动Tomcat解压。如下图,进入到你自己的tomcat的bin中启动./startup.sh

查看tomcat的日志:[root@MiWiFi-R3-srv tomcat]# tail -f logs/catalina.out 如下图所示:记得是在bin目录的上一级输入命令查看

Ok,这样就解压了solr.war,按Ctrl+c退出查看日志信息,然后关闭tomcat,

[root@MiWiFi-R3-srv tomcat]# bin/shutdown.sh

关闭会显示如下图所示:

那么我们来查看tomcat是否解压成功,如下图所示:

在tomcat关闭之后可以把原来的solr.war删除了

[root@MiWiFi-R3-srv webapps]# rm -f solr.war

第六步:把/mysoft/solr/solr-4.10.3/example/lib/ext目录下的所有的jar包,添加到solr工程中。以下是我自己的存放的目录路径,如果没有复制的话是会报错的,所以这一步是必须要做的

[root@MiWiFi-R3-srv ext]# cp * /usr/mysoft/tomcat7/tomcat/webapps/solr/WEB-INF/lib

第七步:创建一个solrhome。/example/solr目录就是一个solrhome。复制此目录到/usr/mysoft/solr/solrhome如下图所示

[root@MiWiFi-R3-srv example]# cp -r solr /usr/mysoft/solr/solrhome

 

第八步:关联solr及solrhome。需要修改solr工程的web.xml文件。

进入到自己的tomcat中找到solr的路径对其进行修改

[root@MiWiFi-R3-srv tomcat]# vim webapps/solr/WEB-INF/web.xml

按键盘上的Esc  然后保存退出 :wq

这样solr就知道solrhome在哪里了

第九步:启动Tomcat

查看tomcat日志信息

在浏览器中输入你的linux的ip地址 以下是我自己的ip地址

http://192.168.31.63:8080/solr/

ok,出现以上界面说明solr后台安装成功了,这样linux安装solr就好了!......................我已经写的非常的详细了,如果你没有安装成功的话,再多调试下,相信你也可以的,加油!

================================================================================================

安装完之后是否就成了呢?no,以上的solr仅支持英文版本的搜索,那么对于中文的搜索呢?这里采用的是IKAnalyzer中文分词器,(其他的中文分词器:1、word分词器2、ansj分词器3、mmseg4j分词器4、ik-analyzer分词器5、jcseg分词器6、fudannlp分词器7、smartcn分词器8、jieba分词器9、stanford分词器10、hanlp分词器,你自己有时间兴趣的话可以再研究)

安装中文分词器

1:首先下载IKAnalyzer的linux版本,这里不单独提供了,如果下载不到或者不知怎么下载,请评论留言,博主可单独发给你。

2:上传IKAnalyzer的文件到linux服务器指定的路径中,记得不要忘记了,配置schema.xml文件又分为以下三个步骤。

--2.1.把分析器的jar包添加到solr工程中 cp IKAnalyzer2012FF_u1.jar /usr/mysoft/tomcat7/tomcat/webapps/solr/WEB-INF/lib/  如下图所示:

--2.2 #IKAnalyzer的配置文件,把IKAnalyzer需要的扩展词典及停用词词典、配置文件复制到solr工程的classpath中,如果没有classes目录则新建,博主这里是新那了一个classes用来存放配置文件

接下把ik的分词器配置存放在classes中:

[root@MiWiFi-R3-srv ik]# cp IKAnalyzer.cfg.xml ext_stopword.dic mydict.dic /usr/mysoft/tomcat7/tomcat/webapps/solr/WEB-INF/classes  如下图所示:

--2.3 #.修改schema.xml文件,配置fieldType,需要在solrhome/collection1/conf/schema.xml中配置,在根节点里最下面配置如下:如图所示,这里图解不写说明了,因博主已经前面写的很多了,如果linux的命令你还是不懂的话,我真的尽力了!接下来,博主的图解就不写太多的注解了,因为比较耽误时间,还请谅解....相信写了这么久的Linux命令你也应该懂了很多了!

编辑修改schema.xml  即vim schema.xml,然后在最后面添加以下内容。

<fieldType name="text_ik" class="solr.TextField">

  <analyzer class="org.wltea.analyzer.lucene.IKAnalyzer"/>

</fieldType>

 (说明:name可以随便写,不重命即可,class后面必须是这个)

3. 配置业务字段

可在继续在schema.xml文件配置相应的业务字段。如: 

<field name="item_title" type="text_ik" indexed="true" stored="true"/>
<field name="item_sell_point" type="text_ik" indexed="true" stored="true"/>
<field name="item_price"  type="long" indexed="true" stored="true"/>
<field name="item_image" type="string" indexed="false" stored="true" />
<field name="item_category_name" type="string" indexed="true" stored="true" />
<field name="item_desc" type="text_ik" indexed="true" stored="false" />
<field name="item_keywords" type="text_ik" indexed="true" stored="false" multiValued="true"/>
<copyField source="item_title" dest="item_keywords"/>
<copyField source="item_sell_point" dest="item_keywords"/>
<copyField source="item_category_name" dest="item_keywords"/>
<copyField source="item_desc" dest="item_keywords"/>

或者以下的也行,业务域是根据你的项目要求情况来的,所以这里并不是死的。

<field name="title" type="text_ik" indexed="true" stored="true"/>

<field name="sell_point" type="text_ik" indexed="true" stored="true"/>

<field name="price"  type="long" indexed="true" stored="true"/>

<field name="image" type="string" indexed="false" stored="true" />

<field name="category_name" type="string" indexed="true" stored="true" />

 

<field name="keywords" type="text_ik" indexed="true" stored="false" multiValued="true"/>

<copyField source="title" dest="keywords"/>

<copyField source="sell_point" dest="keywords"/>

<copyField source="category_name" dest="keywords"/>

<copyField source="category_name" dest="keywords"/>  为复制域,作用是对搜索的优化。

然后保存退出重启tomcat即可生效。:wq 

[root@MiWiFi-R3-srv tomcat]# tail -f logs/catalina.out  查看tomcat是否成功以及端口

分词信息

测试:根据标题名称测试如下图所示:

到此,终于solr也集成了ik中文分词器,加油!相信自己!即使世界都不相信你了,但你也一定要相信自己,为自己 加油!人生路没有这么容易,说时间短暂也很短暂!珍惜当下,活在当下,只要自己人生觉得活得有意义就行!传播正能量,从你我做起,从小事做起 !其他的事会有其他的人去传播!少年强,则中国强! 那些大道理,这里也不说太多,当你能看到我的这篇文章,说明你是一个爱学习的人!

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值