solr install

一、solr简介:

     Solr是一个独立的企业及搜索应用服务器,它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果。solr可以运行在Jetty、Tomcat等服务器上面。

二、solr下载:

     solr最新版的下载链接是:http://mirrors.hust.edu.cn/apache/lucene/solr/6.4.2/,通过上述地址下载Zip文件即可,但是基于不使用最新版的保守心理,我任然在适用4.10.3版本,这里附上4.10.3版的下载地址:http://archive.apache.org/dist/lucene/solr/4.10.3/,当然,如果还是下载不了,请到我的cnbolg下下载。

三、solr安装在Tomcat下:

     1、环境介绍:

            JDK:jdk1.8.0_121,请使用1.7及以上版本,笔者在JDK1.6上solr配置之后跑不起来

            Tomcat:apache-tomcat-7.0.73

            solr:solr-4.10.3

    2、solr目录介绍:下载solr加压后的目录结构如图所示

bin是solr运行的脚本

      contrib是solr的一些插件,用于扩展solr的功能

      dist该文件夹下包含build过程中产生的war和jar文件,以及相关的依赖文件

      doc:solr的文档

      example:solr官方提供的一些示例程序,简要介绍几个示例

                solr:该目录是一个包含了默认配置信息的Solr的Core目录

                multicore:该目录包含了在Solr的multicore中设置的多个Core目录

                webapps:该目录中包括一个solr.war,该war可作为solr的运行实例工程 

     licenses:solr相关的一些许可信息

3、创建solr工程

       ① 创建solr文件夹,在solr文件夹下创建solrHome文件夹,solrHome是solr运行的主目录,其下可以建立多个solr实例工程,及solrCore,solrCore单独对外提供一个搜索服务。

       ② 将solr-4.10.3\example\solr\下的所有文件copy到新建的solr工程的solrHome下,collection1即是一个solrCore,每个solrCore下的conf文件下都有solrconfig.xml文件,这是solrCore运行的配置文件。(solr-4.10.3是解压下载的Zip文件)

 ③ 将solr-4.10.3下的contrib和dist 复制到solr下,与solrHome同级

④ 加载jar包:打开solrCore(collection1)下conf文件中的solrconfig.xml文件,找到引用jar包的代码

  <lib dir="${solr.install.dir:../../..}/contrib/extraction/lib" regex=".*\.jar" />
  <lib dir="${solr.install.dir:../../..}/dist/" regex="solr-cell-\d.*\.jar" />

  <lib dir="${solr.install.dir:../../..}/contrib/clustering/lib/" regex=".*\.jar" />
  <lib dir="${solr.install.dir:../../..}/dist/" regex="solr-clustering-\d.*\.jar" />

  <lib dir="${solr.install.dir:../../..}/contrib/langid/lib/" regex=".*\.jar" />
  <lib dir="${solr.install.dir:../../..}/dist/" regex="solr-langid-\d.*\.jar" />

  <lib dir="${solr.install.dir:../../..}/contrib/velocity/lib" regex=".*\.jar" />
  <lib dir="${solr.install.dir:../../..}/dist/" regex="solr-velocity-\d.*\.jar" />

注: solr.install.dir表示solrCore的位置,需要根据实际jar包的位置更改jar包引用路径

         每两个点“..”代表退到上一级目录,所以退了两级目录,到了solr目录,因此上图表示的是在引用的jar包在solr目录下的contrib或者dist目录下

 ⑤更改dataDir:每个SolrCore都有自己的索引文件目录 ,默认在SolrCore目录下的data中

<!-- Data Directory

       Used to specify an alternate directory to hold all index data
       other than the default ./data under the Solr home.  If
       replication is in use, this should match the replication
       configuration.
    -->
  <dataDir>${solr.data.dir:}</dataDir>

新建的solrCore没有data,data在项目运行时自动生成,如上所示使用默认目录,等于<dataDir>${solr.data.dir:D:/solr/solrHome/collection1/data}</dataDir>,如需自定义data则更改对应的路径。

4)solr工程部署到Tomcat上

      ①将solr-4.10.3\dist下的solr-4.10.3.war复制到Tomcat的webapp目录下,并改名为solr.war

      ②启动Tomcat后,solr.war自动解压之后删除solr.war;或者用360压缩工具解压。

      ③将solr-4.10.3\example\lib\ext下所有jar包复制到webapps\solr\WEB-INF\lib目录下

      ④修改webapps\solr\WEB-INF下的web.xml文件:目的是将Tomcat中的solr关联上之前创建的solr工程

 <env-entry>
       <env-entry-name>solr/home</env-entry-name>
       <env-entry-value>D:\solr\solrHome</env-entry-value>
       <env-entry-type>java.lang.String</env-entry-type>
    </env-entry>

⑤ 复制log4j.properties文件

           在webapps\solr\WEB-INF下新建classes文件夹,将solr-4.10.3\example\resources下的log4j.properties文件复制到classes目录下

⑥ 启动Tomcat,在浏览器中访问http://localhost:8080/solr ,结果如下:

5)保存一条数据

浏览器输入查询URL:http://localhost:8080/solr/collection1/select?q=title:change.me

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏猿说1024

Redis 安装教程

3003
来自专栏F_Alex

Linux安装mysql(Redhat6.5+MySQL5.7)(转载+原创补漏)

2094
来自专栏王小雷

centos 7 安装JDK (Linux安装jdk)

centos 7安装JDK (Linux安装jdk) 第一部分 首先查看centos 7是否有openjdk,如没有就跳过第一部分,直接第二部分。 [maste...

4597
来自专栏bdcn

Supervisord安装配置笔记 原

想要了解怎么配置需要管理的进程,只要打开 supervisord.conf 就可以了,里面有很详细的注释信息。

1924
来自专栏Android开发实战

Gradle自定义插件详解

开发Gradle插件可以在IDEA中进行开发,也可以在Android Studio中进行开发,它们唯一的不同,就是IDEA提供了Gradle开发的插件,比较方...

1042
来自专栏Java帮帮-微信公众号-技术文章全总结

Dubbo入门学习--Dubbo注册及监控中心(3)

Dubbo入门学习--Dubbo注册及监控中心 Dubbo提供广播、Zookeeper、Redis和Simple四种注册中心类型。 Multicast注册中心 ...

3493
来自专栏技术博文

php-fpm中启用慢日志配置(用于检测执行较慢的PHP脚本)

虽然通过nginx accesslog可以记录用户访问某个接口或者网页所消耗的时间,但是不能清晰地追踪到具体哪个位置或者说函数慢,所以通过php-fpm慢日志,...

46010
来自专栏农夫安全

Nfs不安全的配置漏洞

0x00 前言 NFS 代表网络文件系统,是一种可以在 Unix 系统中找到的协议,允许网络上的用户以类似于本地存储的方式访问共享文件夹。现代 NFS 实现包...

4955
来自专栏linux驱动个人学习

Linux下的进程类别(内核线程、轻量级进程和用户进程)--Linux进程的管理与调度(四)

虽然我们在区分Linux进程类别, 但是我还是想说Linux下只有一种类型的进程,那就是task_struct,当然我也想说linux其实也没有线程的概念, 只...

2352
来自专栏技术博文

linux软件的安装,更新与卸载

linux软件的安装,更新与卸载 Linux常见的安装为tar,zip,gz,rpm,deb,bin等。我们可以简单的分为三类. 第一:打包或压缩文件tar,z...

6274

扫码关注云+社区

领取腾讯云代金券