Apache Solr 启动

转载 2012年03月27日 19:44:42

介绍

Apache Solr是一种开放源码的、基于 Lucene Java 的搜索服务器,易于加入到 Web 应用程序中。Solr 提供了层面搜索、命中醒目显示并且支持多种输出格式(包括 XML/XSLT 和 JSON 格式)。它易于安装和配置,而且附带了一个基于 HTTP 的管理界面。您可以坚持使用 Solr 的表现优异的基本搜索功能,也可以对它进行扩展从而满足企业的需要。Solr 还拥有一个活跃的开发者群体,如有需要,您可以随时向他们寻求帮助。

安装

这里我们以 基于 centOS 5.x 来演示整个安装过程

安装Java 6
yum install java-1.6.0-openjdk.i386

下载 Apache Solr

http://www.apache.org/dyn/closer.cgi/lucene/solr/

在这里选择适当的版本进行安装
wget http://apache.etoak.com/lucene/solr/3.3.0/apache-solr-3.3.0.zip
unzip apache-solr-3.3.0.zip
mv apache-solr-3.3.0 /usr/local/solr

启动solr
一种方式是通过servlet 容器进行启动, 当然这里我们介绍一种最简单 快速的方法 只需要运行下面命令即可
cd /usr/local/solr/example
java –jar start.jar
会默认打开8983 端口
这时候打开浏览器 输入 http://localhost:8983/solr/admin/ 便会看到如下的 控制台界面

配置

Solr 的配置是位于 /usr/local/solr/conf 中得 schema.xml.
配置大概可以分为三部分:
[类型] [字段] [其他声明]

类型主要是 描述字段的类型 每一种类型都可以配置很多Analyzer 具体用法 我也不太清
字段主要是 描述有哪些字段需要进行索引, 每个字段是什么样的类型
其他声明( 暂时没研究 )

当然还有俩个比较重要的配置 一个是
<uniqueKey>id</uniqueKey>
主要表明建立索引的时候 以哪个字段为主键
<defaultSearchField>desc</defaultSearchField>
这个表明搜索的时候 默认以哪个字段进行全文搜索

索引

建立索引
由于solr 提供了HTTP 的访问接口 所以在建立索引的时候 我们可以通过HTTP POST 的方式进行索引的建立,当然solr 也有一个 post.jar 可以方便的让我们来进行索引的建立。 举例说明 一个rocky.xml 文档

<add>
<doc>
<field name=”id”>1001</field>
<field name=”name”>Rocky Article</field>
<field name=”desc”>Rocky is a very good Guy, and we do a wonderful work.</field>
<field name=”date_add”>2006-01-17T00:00:00.000Z</field>
</doc>
<doc>
<field name=”id”>1002</field>
<field name=”name”>Zach Article</field>
<field name=”desc”>Zach is a vest Guy, test.</field>
<field name=”date_add”>2006-01-17T00:00:00.000Z</field>
</doc>
</add>

然后将这个xml 文档post 到 solr 进行索引的建立
java -jar post.jar rocky.xml
删除索引:
java -Ddata=args -jar post.jar “id:1001″

搜索
进入http://localhost:8983/solr/admin/form.jsp 进行高级搜索
因为solr 搜索核心采用的是 java Lucene 所以搜索的语法 和 Lucene 一样 这里我只举例一些简单的搜索方式 复杂的搜索方式可以访问

http://lucene.apache.org/java/2_9_1/queryparsersyntax.html

以rocky.xml 为案例 如果搜索内容为:
1. Rocky
这说明对默认字段进行搜索 相当于 desc:Rocky
2. name:rocky desc:rocky
对俩个字段进行搜索, 相当于 name:rocky OR desc:rocky
3. name:rocky AND desc:rocky
表明俩个字段都必须含有 rocky 才行

Linux 下solr 的自动启动脚本

Vim /etc/init.d/solr

#!/bin/sh
SOLR_DIR="/usr/local/solr/example"
JAVA_OPTIONS="-Xmx256m -DSTOP.PORT=8079 -DSTOP.KEY=stopkey -jar start.jar"
LOG_FILE="/var/log/solr.log"
JAVA="/usr/bin/java"
 
case $1 in
start)
echo "Starting Solr"
cd $SOLR_DIR
$JAVA $JAVA_OPTIONS 2&gt; $LOG_FILE &amp;
;;
stop)
echo "Stopping Solr"
cd $SOLR_DIR
$JAVA $JAVA_OPTIONS --stop
;;
restart)
$0 stop
sleep 1
$0 start
;;
*)
echo "Usage: $0 {start|stop|restart}" &gt;&amp;2
exit 1
;;
Esac

Chmod +x solr
然后把 在 /etc/rc.local 里加入
/etc/init.d/solr start

相关文章推荐

1、solr的安装启动及运行

1、Solr的下载地址:http://archive.apache.org/dist/lucene/solr/ Solr下载下来后默认就可以运行的,它是运行在自带的jetty服务器上面 2、进入...
  • wxwzy738
  • wxwzy738
  • 2013年12月04日 21:43
  • 14794

solr6.5安装与配置,直接启动服务(不需要部署到tomcat)

1、下载solr6.5,windows下载zip,linux下载.tgz 2、解压 3、window中启动,从cmd中进入到solr的解压目录里的bin目录 执行 solr.cmd start 检查是...

solr常用命令总结

查看帮助 bin/solr -help             可以看到solr有哪些子命令,如 start, stop, restart, status, healthcheck, c...

solr 启动过程 分析

一、环境介绍: 1:我使用的版本是:apache-solr-4.0.0 2:本机在eclipse中调试源码。 3:工程结构:     在根目录下创建netboy新文件夹,将\solr\...

Linux环境下Solr6部署文档

说明:本文档仅说明solr在单例模式下的启动和配置,不适用SolrCloud模式下的情况。 一、Solr-6安装 1.        确保服务器安装的jdk版本在1.8以上 2.        ...

linux下安装部署solr5.4.0详细记录

最近项目中需要用到搜索,之前没接触过,于是四方打听,得知solr是一个非常不错的选择,经过反复研究,终于入门了点 ,为了加深理解,有些地方我将命令也记录了下来。由于很少写博客,加上资历不深,所以,不足...

solr linux安装启动报错

HTTP Status 500 - {msg=SolrCore 'collection1' is not available due to init failure: Could not load c...

在Linux系统上安装Solr服务器的详细步骤.

近期项目要使用Solr服务器,此处的solr服务器是单机版的.集群版本稍后还没学会,安装详细步骤在此贴一下,记录一下. 准备工作:将Solr的安装包复制到/usr/local/src/solr目录下....

solr以及solr的Linux环境下安装

区分: Lucene: 是一个索引与搜索类库,而不是完整的程序。 Solr:是一个高性能,采用Java5开发,基于Lucene的一个独立的企业级搜索应用服务器,它对外提供类似于Web-servic...

在windows和linux下分别部署Solr服务

一、在windows下部署Solr服务 1、部署前的准备: jdk1.7+tomcat-7+solr-4.10.4 1.1、安装JDK就不说了 1.2、安装tomcat 下载下来直接解压到指定目录,我...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Apache Solr 启动
举报原因:
原因补充:

(最多只允许输入30个字)