Solr是一个基于Lucene java库的企业级搜索服务器,本文记录了solr的安装过程,版本为最新的1.4.1。
1) 下载
从solr的官网http://lucene.apache.org/solr/找到最新的版本1.4.1.
解开下载的apache-solr-1.4.1.zip或apache-solr-1.4.1.tgz文件到apache-solr-1.4.1目录.
2) 简易安装
solr的发布包中包含一些example,为了方便的运行这些example,solr的发布包中还额外的附带了jetty以便我们可以快速的搭建一个可运行的solr实例。
因为一切都是现成的,因此过程就很简单了, 参考solr的教程(http://lucene.apache.org/solr/tutorial.html), 步骤如下:
1. cd apache-solr-1.4.1/example
2. java -jar start.jar
3. 打开浏览器访问 access http://localhost:8983/solr/admin/
如果可以看到solr的搜索页面,说明solr正常运行。足够简单吧。
3) 标准安装
上面的简易安装方式终究不能运用于正式场合,因此还是需要标准安装方式。
solr的安装其实需要做的事情不多,因为本身就只需要运行起来是一个打包好的war包,只要配置OK就可以运行于各个web container。
通用的solr安装步骤如下:
1. 准备好web container 如tomcat, jetty, resin等
注意安装前先停止web container服务器。
2. 从上面解压好的solr发布包中找到example\solr目录
这个目录可以用来作为配置solr的模板使用
将example\solr目录复制到其他路径,如C:\soft\solr,以后这个目录就将作为solr home使用
注意有个文件需要修改一下,$SOLR_HOME/conf/solrconfig.xml,找到dataDir设置:
默认为<dataDir>${solr.data.dir:./solr}</dataDir>,用的是相对路径,这个需要修改为完整路径:
<dataDir>${solr.data.dir:C:\soft\solr\data}</dataDir>
3. 从上面解压好的solr发布包中找到solr的war包
apache-solr-1.4.1/dist/apache-solr-1.4.1.war
可以将这个war复制到solr home目录下
4. 启动web container
启动时有两个东西需要做到:
1. 要运行的solr的webapp
可以通过直接复制solr的war包到webapp目录,也可以通过其他方式指定这个war的路径
总之是让web container启动solr这个应用。
2. 要指明solr home
方式有3种:
1. 设置java 的系统参数solr.solr.home(应该是solr.home,但是官网就是写成solr.solr.home)
如 -Dsolr.solr.home=C:\soft\solr
2. 设置JNDI lookup "java:comp/env/solr/home"
3. 默认为./solr目录,即当前工作路径下的solr
由于工作路径容易造成问题,因此一般不推荐这种方式。
5. 访问solr的管理页面来验证安装是否完成
上述步骤中其他步骤都简单,只有步骤4需要额外注意。虽然原则上都是这些内容,但是具体到不同的web container会有不同的方法。
下面以tomcat和jetty为例,假定步骤1,2,3都已经完成。
4) 安装于tomcat
以下内容参考官网文档 http://wiki.apache.org/solr/SolrTomcat.
1. 修改tomcat的server.xml文件
主要是修改监听端口,另外需要设置URIEncoding为UTF-8。
<Connector port="8983" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8" />
2. 增加tomcat\conf\Catalina\localhost\solr.xml文件
内容为:
<?xml version="1.0" encoding="utf-8"?>
<Context docBase="C:\soft\solr\apache-solr-1.4.1.war" debug="0" crossContext="true">
<Environment name="solr/home" type="java.lang.String" value="C:\soft\solr" override="true"/>
</Context>
步骤4就完成了,使用的tomcat版本为6.28。
5) 安装于jetty
以下内容参考官网文档 http://wiki.apache.org/solr/SolrJetty, 但是坦白说,这个文档的内容有点凌乱。
jetty安装完成后,只需一个步骤,增加文件jetty\contexts\solr.xml,内容如下:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN" "http://jetty.mortbay.org/configure.dtd">
<Configure class="org.mortbay.jetty.webapp.WebAppContext">
<Set name="contextPath">/solr</Set>
<Set name="war">C:\soft\solr\apache-solr-1.4.1.war</Set>
<Set name="extractWAR">true</Set>
<Set name="copyWebDir">false</Set>
<Set name="defaultsDescriptor"><SystemProperty name="jetty.home" default="."/>/etc/webdefault.xml</Set>
<Array id="plusConfig" type="java.lang.String">
<Item>org.mortbay.jetty.webapp.WebInfConfiguration</Item>
<Item>org.mortbay.jetty.plus.webapp.EnvConfiguration</Item>
<Item>org.mortbay.jetty.plus.webapp.Configuration</Item>
<Item>org.mortbay.jetty.webapp.JettyWebXmlConfiguration</Item>
<Item>org.mortbay.jetty.webapp.TagLibConfiguration</Item>
</Array>
<Set name="ConfigurationClasses"><Ref id="plusConfig"/></Set>
<New class="org.mortbay.jetty.plus.naming.EnvEntry">
<Arg>/solr/home</Arg>
<Arg type="java.lang.String">C:\soft\solr</Arg>
<Arg type="java.lang.Boolean">true</Arg>
</New>
</Configure>
主要是指定contextPath/war, 另外设置"/solr/home",注意jetty下是"/solr/home",不是"solr/home"。这里有点奇怪。
时间有限,其他webcontainer就不一一测试了,相信原理都是一样的。
补充:以上为windows上的安装过程,linux系统应该也是相同的。我在SUSE 11上验证通过,安装成功。
分享到:
相关推荐
在本压缩包“apache-solr-1.4.1.zip”中,包含的是Solr 1.4.1版本的相关文件,这个版本是Solr历史上的一个重要里程碑,它为用户提供了稳定且功能丰富的搜索服务。 首先,我们来了解一下Solr的核心概念和主要特点: ...
solr-mongo-importer-1.1.0.jar solr-mongo-importer-1.1.0.jar solr-mongo-importer-1.1.0.jar
"apache-solr-dataimportscheduler-1.0.zip"是一个官方发布的54l版本,专门针对Solr 5.x的定时索引生成需求。 数据导入调度器(DataImportScheduler)是这个扩展的核心组件,它允许用户根据预设的时间间隔自动执行...
solr-import-export-json最新代码solr-import-export-json最新代码solr-import-export-json最新代码solr-import-export-json最新代码solr-import-export-json最新代码solr-import-export-json最新代码solr-import-...
"apache-solr-dataimportscheduler.jar" 是一个专门为Solr设计的扩展包,用于实现自动化的数据增量更新调度。 首先,我们要理解Solr的数据导入过程。Solr使用DataImportHandler(DIH)来从关系型数据库、XML文件或...
这个名为"apache-solr-3.5.0.jar"的压缩包包含两个关键组件:`apache-solr-core-3.5.0.jar`和`apache-solr-solrj-3.5.0.jar`,它们对于成功搭建Solr 3.5.0环境至关重要。 1. `apache-solr-core-3.5.0.jar`: 这是...
Solr-8.11.1是该软件的一个特定版本,包含了最新的特性和改进。 在"solr-8.11.1.tgz"这个压缩包中,我们可以期待找到以下关键组成部分: 1. **Solr WAR 文件**:这是核心的搜索服务器应用程序,通常命名为`solr....
Solr 数据导入调度器(solr-dataimport-scheduler.jar)是一个专门为Apache Solr 7.x版本设计的组件,用于实现数据的定期索引更新。在理解这个知识点之前,我们需要先了解Solr的基本概念以及数据导入处理...
- 将 C:\solr-4.9.0\example\resources\log4j.properties 复制到 C:\apache-tomcat-7.0.53\webapps\solr\WEB-INF\classes 3. **启动与测试** - 启动 Tomcat 服务器 - 在浏览器中访问 http://localhost:8080/solr...
标题中的"solr-dataimporthandler的jar包"指的是 Solr 用于实现数据导入功能的两个核心 JAR 文件: 1. `solr-dataimporthandler-6.0.1.jar`:这是 DIH 的主库,包含了处理数据导入过程所需的类和方法。它提供了数据...
jar包,亲测可用
jar包,亲测可用
jar包,亲测可用
jar包,亲测可用
jar包,亲测可用
标题"solr-7.4.0.zip"表明这是一个包含了Solr 7.4.0版本的压缩包文件,该版本发布于2018年,包含了完整的Solr服务器及其相关组件。 在描述中提到,“solr7需要java8环境”,这是因为Solr的运行依赖于Java平台,特别...
Solr-4.10.3是Solr的一个稳定版本,发布于2014年,包含了对之前版本的各种改进和优化。 在Solr-4.10.3中,主要包含以下几个核心知识点: 1. **SolrCloud模式**:SolrCloud是Solr的一种分布式部署模式,引入了...
这里我们将围绕"solr-9.0.0-src.tgz"这个源码包,详细探讨其主要组成部分、核心功能以及开发过程中的关键知识点。 1. **Solr架构** Solr的架构基于Lucene,一个强大的全文搜索引擎库。它提供了分布式、可扩展、高...
jar包,亲测可用
本文将深入探讨mmseg4j在Solr中的应用,以及如何在Solr 6.3版本中集成并使用mmseg4j-solr-2.4.0.jar这个库。 首先,mmseg4j是由李智勇开发的一个基于Java的中文分词工具,它的全称是“Minimum Match Segmentation ...