机器上已安装 : Tomcat 6.0 jdk1.7 mysql 5.0
1 访问 http://www.apache.org/dyn/closer.cgi/lucene/solr , 在这个网址里选择一个路径 , 下载
solr 3.5 的版本
2 solr3.5 在本机解压缩以后 , 把 apache-solr-3.5.0\example\webapps 目录下的 solr.war
文件拷贝到 Tomcat 6.0 的webapps 目录下
3 在 Tomcat 6.0\webapps\solr 目录里 新建一个 文件夹 conf
4 把 solr3.5 本机解压缩文件夹 apache-solr-3.5.0\example 下的 multicore 文件夹 考本到
Tomcat 6.0\webapps\solr\conf 目录下
5 在 Tomcat 6.0\conf\Catalina\localhost 目录下新建一个 solr.xml 文件 , 里面的内容如下
<?xml version="1.0" encoding="UTF-8"?>
<Context
docBase="${catalina.home}/webapps/solr.war" debug="0" crossContext="true"
>
<!-- 这里配置的是 Solr 运行的 Home 目录 -->
<Environment name="solr/home" type="java.lang.String"
value="${catalina.home}/webapps/solr/conf/multicore" override="true" />
</Context>
6 访问你的 solr 项目 localhost:8080/solr 会显示出两个 core , solr 正常运行
7 配置分词 , 使用的是 mmseg4j 和 搜狗词库 ,
下载地址 : http://code.google.com/p/mmseg4j/ ,
http://code.google.com/p/mmseg4j/downloads/detail?name=data.zip&can=2&q
8 把本地下载的 mmseg4j 解压缩 , 把里面的mmseg4j-all-1.8.5.jar 文件 拷贝到 Tomcat
6.0\webapps\solr\WEB-INF\lib 目录下
9 在 Tomcat 6.0\webapps\solr 目录下新建一个 dic 文件夹 , 把 新下载的 词库 拷贝到 dic
目录下
10 在 \Tomcat 6.0\webapps\solr\conf\multicore\core0\conf\schema.xml 文件的
types 节点里 添加如下节点 :
<fieldtype name="textComplex" class="solr.TextField"
positionIncrementGap="100">
<analyzer>
<tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory"
mode="complex" dicPath="E:/Program Files/Apache Software Foundation/Tomcat
6.0/webapps/solr/dic">
</tokenizer>
</analyzer>
</fieldtype>
<fieldtype
name="textMaxWord" class="solr.TextField" positionIncrementGap="100">
<analyzer>
<tokenizer
class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="maxword"
dicPath="E:/Program Files/Apache Software Foundation/Tomcat
6.0/webapps/solr/dic">
</tokenizer>
</analyzer>
</fieldtype>
<fieldtype
name="textSimple" class="solr.TextField" positionIncrementGap="100">
<analyzer>
<tokenizer
class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="simple"
dicPath="E:/Program Files/Apache Software Foundation/Tomcat
6.0/webapps/solr/dic">
</tokenizer>
</analyzer>
</fieldtype>
11 在 \Tomcat 6.0\webapps\solr\conf\multicore\core0\conf\schema.xml 文件的
fields 节点里 添加如下节点 :
<field name="simple" type="textSimple" indexed="true" stored="true"
multiValued="true" />
<field name="complex" type="textComplex"
indexed="true" stored="true" multiValued="true" />
<field name="text"
type="textMaxWord" indexed="true" stored="true" multiValued="true" />
12 因为 solr3.5 里有两个 core , 所以针对 core1 重复 10,11 两步
13 对分词进行测试 , 访问
http://localhost:8180/solr/core0/admin/analysis.jsp?highlight=on
13.1 Field[Name] 输入 : complex
13.2 Field Value(index) 输入 : 中国银行第一分行 , Field Value(index) 下面的
verbose outpu 点选
13.3 点击 Analyze 按钮 , 查看分词结果 : 中国银行 | 第一 | 分行
14 此时 Solr3.5 已经可以进行 分词 , 接下来配置 solr 3.5 连接 mysql 数据库 , 生成索引 , 进行分词
14.1 下载 java 的 mysql 驱动 , 本机解压 mysql-connector-java-5.1.18-bin.jar, 然后拷贝到
Tomcat 6.0\webapps\solr\WEB-INF\lib 目录下
14.2 在 \Tomcat 6.0\webapps\solr 目录下 新建 db 文件夹
14.3 在 \Tomcat 6.0\webapps\solr\db 文件夹下面新建一个 db-data-config.xml 文件 , 内容如下
:
<dataConfig>
<dataSource type="JdbcDataSource"
driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/test"
user="root" password="123" />
<document name="messages">
<entity name="message" transformer="ClobTransformer" query="select *
from test1">
<field column="ID" name="id" />
<field column="Val" name="text" />
</entity>
</document>
</dataConfig>
url="jdbc:mysql://localhost:3306/test" user="root" password="123" 这里配置了
mysql 的连接路径 , 用户名 , 密码
<field column="ID" name="id" /><field column="Val" name="text"
/> 这里配置的是 数据库里要索引的字段 , 注意name 是 11 步配置的
14.4 在 Tomcat 6.0\webapps\solr\conf\multicore\core0\conf 目录下的
solrconfig.xml 文件里 , 添加如下代码 :
<requestHandler name="/dataimport"
class="org.apache.solr.handler.dataimport.DataImportHandler">
<lst
name="defaults">
<str name="config">E:/Program Files/Apache
Software Foundation/Tomcat
6.0/webapps/solr/db/db-data-config.xml</str>
</lst>
</requestHandler>
“E:/Program Files/Apache Software Foundation/Tomcat
6.0/webapps/solr/db/db-data-config.xml” 是 14.3 配置文件的绝对路径
14.5 在Tomcat 6.0\webapps\solr\conf\multicore\core1\conf\solrconfig.xml
路径里重复 14.4
14.6 把本地下载解压的 solr3.5 文件里 , dist 目录下的
apache-solr-dataimporthandler-3.5.0.jar 和
apache-solr-dataimporthandler-extras-3.5.0.jar Tomcat
6.0\webapps\solr\WEB-INF\lib 目录下
14.7 solr3.5 连接 mysql 已经配置完成 , 测试读取 mysql 生成 索引 , 访问 :
http://localhost:8180/solr/core0/dataimport?command=full-import
14.8 测试分词查询 , 访问 http://localhost:8180/solr/core0/admin/
查询数据库里索引列里有的词
注意 , 这仅仅是配置 solr3.5 连接 mysql 生成索引 , 可以执行正常 词语 的查询 , 但是不能执行 对搜索短语的分词 查询
multicore 目录下面多个 core 文件夹 , 每一个都是一个接口 , 有独立的配置文件 , 处理某一类数据 。
multicore/core0/conf/ 目录下的 schema.xml 文件 相当于数据表配置文件 , 它定义了加入索引的数据的数据类型
。文件里有一个 <uniqueKey>id</uniqueKey> 的配置 , 这里将 id 字段作为索引文档的唯一标示符 , 非常重要
。
FieldType 类型 , name 是这个 FieldType 的名称 , class 指向了 org.apache.solr.analysis
包里面对应的 class 名称 , 用来定义这个类型的定义 。在 FieldType
定义的时候最重要的就是定义这个类型的数据在建立索引和进行查询的时候要使用的分析器analyzer,包括分词和过滤 。
Fields 字段 : 结点内定义具体的字段(类似数据库中的字段) , 就是 field , 包含 name ,
type(为之前定义过的各种FieldType) , indexed(是否被索引) , stored(是否被存储) ,
multiValued(是否有多个值)
copeField(赋值字段): 建立一个拷贝字段 , 将所有的全文字段复制到一个字段中 , 以便进行统一的检索 。
[转载文章:http://hi.baidu.com/duogemajia/blog/item/e222b1d0d57aec269a50275e.html]
分享到:
相关推荐
### Solr 3.5配置及应用知识点详解 #### 一、Solr简介 - **定义**:Apache Solr是一款高性能、开源的搜索服务器。它使用Java语言开发,并且主要基于HTTP协议和Apache Lucene技术实现。 - **数据模型**:在Solr中,...
Solr 3.5 是一个老版本的Apache Solr,这是一个基于Java的全文搜索引擎服务器,广泛用于企业级的搜索应用。Tomcat则是一款流行的开源Java Servlet容器,常用来部署Java Web应用程序,包括Solr这样的服务。"solr 3.5 ...
solr3.5开发教程solr3.5开发教程solr3.5开发教程solr3.5开发教程solr3.5开发教程
总之,Solr 3.5 整合到 Tomcat 可以让你利用 Tomcat 的稳定性和灵活性来运行和管理 Solr 搜索服务,从而在 web 应用中实现高效的全文检索功能。通过理解 Solr 的配置和 Tomcat 的部署机制,你可以更好地定制和扩展你...
总的来说,Solr 3.5的配置和应用涉及到多个层面,包括服务器的搭建、Solr核心组件的配置、分词器的集成以及Schema的定制。这些步骤对于实现一个高效、功能丰富的全文搜索引擎至关重要。通过熟练掌握这些知识,开发者...
本文将深入探讨 Solr 3.5 的配置及其在实际应用中的关键点。 首先,配置 Solr 3.5 包括以下几个主要步骤: 1. **环境搭建**:你需要先安装 Java Development Kit (JDK) 并设置好环境变量,因为 Solr 是基于 Java ...
在安装 Solr 3.5 的过程中,首先需要下载相应的软件包,如 Tomcat 7.0.26 作为应用服务器。然后解压缩并配置 Tomcat,修改 `server.xml` 文件以设置端口和字符编码(如添加 `URIEncoding="UTF-8"` 防止中文乱码)。...
Apache Solr 是一个开源的搜索服务器,Solr 使用 Java 语言开发,主要基于 HTTP 和 Apache ...定制 Solr 索引的实现方法很简单,用 POST 方法向 Solr 服务器发送一个描述所有 Field 及其内容的 XML 文档就可以了。
### Solr 3.5与Tomcat的部署配置及与Java项目的集成 #### 一、Solr 3.5与Tomcat的部署配置 **1. 下载与安装Solr** 首先,需要从官方或其他可信任来源下载Apache Solr 3.5.0。根据描述中的链接(虽然不可用),...
Solr 3.5与Tomcat的整合是一个关键的步骤,尤其对于那些希望在Java应用服务器上部署Solr搜索引擎的企业。Solr是一个基于Apache Lucene的开源搜索平台,提供了高效、可扩展的全文检索、命中高亮、拼写检查、分类、 ...
### Solr3.5开发应用指导 ...以上是对Solr3.5开发应用指导的详细解读,涵盖了从安装配置到具体应用的各个方面。通过这些内容,开发者可以更好地理解和掌握Solr的强大功能,从而构建高效、稳定的搜索服务。
### Solr 3.5 与 Tomcat 6 集成及自定义分词器配置详解 #### 一、Solr与Tomcat集成概述 Solr 是一个高性能、采用 Java 开发的企业级搜索服务器,它基于 Lucene 库提供了一个完整的全文检索框架。而 Tomcat 是一个...
通过以上步骤,我们已经完成了在Tomcat环境下搭建Solr 3.5及MMSEG4J中文分词器的基础配置工作。这些配置使得Solr能够更好地处理中文文档,并提供更准确的中文检索结果。此外,通过MMSEG4J提供的不同分词模式,可以...
上述步骤是基于最基础的环境进行Solr4.4.0的入门配置。在实际应用中,可能还需要根据具体需求进行进一步的配置优化,例如调整内存设置、修改默认的搜索参数等。此外,对于生产环境,建议关注Solr的文档和社区,以...
Solr是一个独立的企业级应用服务器,它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的xml文件, 生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回...
在本教程中,我们将深入探讨Solr 3.5版本的开发应用,重点关注其实战应用,以帮助开发者更好地理解和利用这个强大的搜索引擎。 一、Solr概述 Solr的核心功能包括文本分析、索引构建、查询处理和结果排序。它支持...
【Solr入门配置说明】 Solr,全称为Apache Solr,是一个开源的、基于Java的企业级搜索应用服务器。它提供了一种高效、可扩展的全文检索能力,支持多种数据源,如XML、JSON等,通过HTTP接口进行通信,使得开发者能够...
Apache Solr是一个开源的企业级搜索平台,用于构建高效、可扩展的全文检索应用。这个名为"apache-solr-3.5.0.jar"的压缩包包含两个关键组件:`apache-solr-core-3.5.0.jar`和`apache-solr-solrj-3.5.0.jar`,它们...