Solr----有趣的全文检索(linux部署篇)
Posted 与JAVA邂逅的点滴
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Solr----有趣的全文检索(linux部署篇)相关的知识,希望对你有一定的参考价值。
前天和大家介绍了全文检索的原理,本来在昨天想仔细的介绍一下lucene和solr的,但是考虑了一下就用几句话来介绍一下lucene和solr吧。(注意:若没有linux命令行基础的朋友看本篇可能会稍有不适。不过照着做就可以了,嘿嘿~)
注意:防火墙需要关闭:
service iptables stop
永久关闭:
chkconfig iptables off
Lucene是一套用于全文检索和搜寻的开源程式库,由Apache软件基金会支持和提供。Lucene提供了一个简单却强大的应用程式接口,能够做全文索引和搜寻。
solr是由java开发,并且基于lucene实现的一个很强大的系统。说白了也就是说solr和lucene的关系也就相当于servlet和SpringMVC还有servlet和struts2的关系。一句话就是:solr是lucene的框架。(上面标红了“系统”二字,也就是说solr是一个web应用,是以war包打包的方式部署在服务器容器中的)。
花了这么少的篇幅了解了一下solr和lucene,接下来主要看solr是如何在linux环境下部署的。
首先你需要一台已经装好jdk,tomcat的linux系统的服务器或者虚拟机。
其次你需要将solr压缩包通过SSH连接工具传入服务器。
3. 解压solr,在控制台输入:tar zxvf solr-4.10.3.tgz.tgz
这样就解压了solr。
4.进入solr文件夹。输入:cd solr-4.10.3;ls -al
这样可以看到solr的目录结构,那么首先“开刀” dist” 目录,cd进入dist目录
看到war包了没有!? war包就是我们我们的solr系统的压缩包,也就是说把它移动到tomcat容器的webapps目录下启动tomcat容器就能自动解压并运行solr系统了。但是在这个步骤中还有一些事情需要做。
你会看到红色的一些jar包其中solr-solrj-4.10.3.jar是我们solr应用需要依赖的jar包,它的作用是将solr和solr客户端进行连接。
所以首先我们先在/usr/local/下创建一个tomcat容器:
cd ~;mkdir /usr/local/solr/
cp apache-tomcat-7.0.47 /usr/local/solr/tomcat
然后我们需要在将这个war包复制到tomcat的webapps目录下
cd /root/solr-4.10.3/dist
cp solr-4.10.3.war /usr/local/solr/tomcat/webapps/solr.war
启动tomcat容器解压solr这个war包。
cd /usr/local/solr/tomcat/;
bin/startup.sh
将solr-solrj-4.10.3.jar这个jar包添加入solr系统的lib目录下
cd /root/solr-4.10.3/
cp solr-solrj-4.10.3.jar /usr/local/solr/tomcat/webapps/solr/WEB-INF/lib/
做了这4步还是不够的,首先看主目录
我们需要example/lib/ext里面的依赖拓展包
所以将这个目录里面的所以jar包都倒入solr系统的lib目录里
cd /root/solr-4.10.3/example/lib/ext
cp * /usr/local/solr/tomcat/webapps/solr/WEB-INF/lib/
该添加的包都添加了,但是还有一个问题,现在还需要配置solrhome。
cd /root/solr-4.10.3/example
cp -r solr /usr/local/solr/solrhome
注意:标红的目录刚好就是solrhome目录。
最后:关联solr及solrhome。需要修改solr工程的web.xml文件
这个xml的中间一行就是我们配置的solrhome。
万事大吉只欠东风!启动tomcat容器吧!。
这样就启动成功了!访问一下我们的solr后台界面吧!!
这样就部署成功了!! 是不是很简单呢? 毕竟solr是java开发的不像那种c开发的还需要配置很多第三方依赖和环境。
以上是关于Solr----有趣的全文检索(linux部署篇)的主要内容,如果未能解决你的问题,请参考以下文章