Linux上安装部署Solr-4.10.4并测试

Solr是一种全文检索技术,在一些门户社区中能提高用户体验。Solr是一个独立的企业级搜索应用服务器,它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果。
接下来,将介绍如何在Linux系统(Ubuntu)上安装部署solr服务(solr4.10.4)并简单的测试例子数据。由于之前我在本地机器(windows)上安装配置的时候采用了4.10.4版本,因此本教程也将采用solr4.10.4版本进行Linux的solr配置。
1.工具准备:
(1)Solr4.10.4的linux版本solr-4.10.4.tgz(网盘链接:https://pan.baidu.com/s/1bq9WTTd
(2)JDK和Tomcat安装(这里参考我上一篇博文:http://blog.csdn.net/weixin_36413887/article/details/79066490
(3)Xftp 5和Xshell 5工具(这里参考我上一篇博文:http://blog.csdn.net/weixin_36413887/article/details/79066490
(4)mysql-connector-java-5.1.44-bin.jar驱动包(网盘链接:https://pan.baidu.com/s/1o9wJqX0
2.搭建步骤:
(1)利用Xftp 5工具将本地机器的Solr-4.10.4.tgz包上传到Linux服务器的文件夹下(路径:/root);
这里写图片描述
(2)解压缩solr包至文件夹/usr中,并重命名为solr;如下所示
(Linux命令如下,路径需自行修改)

cd /usr
tar -zxvf /root/solr-4.10.4.tgz

右键解压后的文件夹重命名为solr
这里写图片描述
这里写图片描述
(3)把解压后重命名的/usr/solr/dist/solr-4.10.4.war 复制到tomcat目录的webapps下:

cd /usr/solr/dist
cp solr-4.10.4.war /usr/tomcat/apache-tomcat-7.0.67/webapps/

接下来便是解压,此处需注意已下命令的顺序
启动tomcat解压war包:

cp /usr/tomcat/apache-tomcat-7.0.67/bin
./startup.sh

关闭tomcat并删除war包

./shundown.sh
cd /usr/tomcat/apache-tomcat-7.0.67/webapps
rm -r solr-4.10.4.war

(4)将/usr/solr/example/lib/ext目录下的所有jar包复制到/usr/tomcat/apache-tomcat-7.0.67/webapps/solr/WEB-INF/lib/ 下

cp -r /usr/solr/example/lib/ext/* /usr/tomcat/apache-tomcat-7.0.67/webapps/solr/WEB-INF/lib/  

(5)将/usr/solr/example目录中的solr文件夹复制到与tomcat同目录下并重命名为solrhome(存放检索的测试数据)

cp -r /usr/solr/example/solr/ /usr/tomcat/

右键重命名为solrhome文件夹如下所示
这里写图片描述
(6)将/usr/solr/example/resources下的log4j.properties文件复制到tomcat/webapps/solr/WEB-INF/classes目录下,如果没有classes文件夹则新建

cp -r /usr/solr/example/resources/log4j.properties /usr/tomcat/apache-tomcat-7.0.67/webapps/solr/WEB-INF/classes/

(7)在solr界面中,为了从数据库导入数据,需要用到dataimport包;将/usr/solr/dist目录下的solr-dataimporthandler-4.10.4.jar和solr-dataimporthandler-extras-4.10.4.jar复制到tomcat/webapps/solr/WEB-INF/lib/下

cp /usr/solr/dist/solr-dataimporthandler-4.10.4.jar /usr/tomcat/apache-tomcat-7.0.67/webapps/solr/WEB-INF/lib/ 

cp /usr/solr/dist/solr-dataimporthandler-extras-4.10.4.jar /usr/tomcat/apache-tomcat-7.0.67/webapps/solr/WEB-INF/lib/

(8)以上就配置好了solr的基本服务,接下来,导入测试数据;需要指定solr服务器的solrhome的位置。前面我们把solrhome放到了与tomcat同目录下;进入tomcat的webapps下的solr项目,修改其web.xml文件,指定solrhome的路径:具体操作如下:
利用Xftp 5打开/usr/tomcat/apache-tomcat-7.0.67/webapps/solr/WEB-INF目录下的web.xml文件,ctrl+f寻找“solr/home”的位置,找到注解,修改路径,并删掉该注解前后的<–和–>
这里写图片描述
这里写图片描述

(9)最后就是添加core了;由于solrhome下的collection1可以直接拿来测试,因此我们只需要修改collention1的配置就可以了;由于solr是基于lucene的java搜索引擎,因此我们需要mysql-connector-java-5.1.44-bin.jar驱动包(本片博客前面已提供网盘链接),由于java是跨平台的,因此驱动包的winsows和linux版本是一样的;把mysql的驱动包mysql-connector-java-5.1.44-bin.jar放到/usr/tomcat/apache-tomcat-7.0.67/lib/下;
(10)修改位于/usr/tomcat/solrhome/collection1/conf下的solrconfig.xml ,在最后面(< / config>之前 )加入如下内容:

<requestHandler name="/dataimport" class="solr.DataImportHandler">
     <lst name="defaults">
       <str name="config">data-config.xml</str>
     </lst>
</requestHandler>

(11)在 solrconfig.xml的同级目录中,增加data-config.xml文件,在其中定义数据源,连接数据库信息,以及定义实体类

<?xml version="1.0" encoding="UTF8"?> 
<dataConfig>
<dataSource type="JdbcDataSource"
            driver="com.mysql.jdbc.Driver"
            url="jdbc:mysql://服务器IP/数据库名"
            user="数据库用户名"
            password="数据库密码"/>
<document>
     <entity name="case_2007" pk="id"   
     query="select * from case_2007">
           <field column="id" name="Id"/>  
         <field column="文书ID" name="文书ID"/>  
         
           .......
           .......
           .......(这里请根据数据库测试数据补全)

     </entity>
</document>

</dataConfig> 

(12)因为前面的field需要映射,因此我们需要修改与solrconfig.xml的同级目录中的scheme.xml,在其中添加data-config.xml中定义的field信息(如果已存在就不需要添加,上面的例子中除id外,其他都需定义),在最后添加

<field name="文书ID" type="string" indexed="true" stored="true" />

至此,大功告成!!!
(13)启动tomcat,访问http://服务器IP:8080/solr,可以看到如下界面:
这里写图片描述
有任何疑问欢迎留言探讨!告辞!

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值