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

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

一、在windows下部署Solr服务 1、部署前的准备: jdk1.7+tomcat-7+solr-4.10.4 1.1、安装JDK就不说了 1.2、安装tomcat 下载下来直接解压到指定目录,我...
  • hsl_1990_08_15
  • hsl_1990_08_15
  • 2016年05月10日 12:16
  • 2044

linux下让solr以守护进程方式运行(让solr运行在后台)

操作系统:linux6.5 solr版本:4.1 在solr/example目录下,使用内置的jetty服务器启动solr 两种方式: 第一种:#   (java -Dsolr.sol...
  • farYang
  • farYang
  • 2016年11月10日 22:24
  • 1579

Linux环境下Solr6部署文档

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

solr linux安装启动报错

HTTP Status 500 - {msg=SolrCore 'collection1' is not available due to init failure: Could not load c...
  • jayant_xu
  • jayant_xu
  • 2016年10月12日 17:26
  • 683

solr solr-5.3.1 Jetty下启动

1,solr-5.3.1 linux 环境下unzip solr-5.3.1.zip  solr-5.3.1\solr-5.3.1\bin          ./solr start 启动...
  • yanlove_jing
  • yanlove_jing
  • 2016年05月10日 18:36
  • 672

Linux(CentOS6.4)下简单部署Solr4.8.1

1、环境准备 Cent
  • zwx19921215
  • zwx19921215
  • 2014年06月21日 00:19
  • 4549

Solr部署如何启动

Solr部署如何启动 Posted on 一月 10, 2013 in: Solr入门|评论关闭 我刚接触solr,我要怎么启动,这是群里的朋友问得比较多的问题, solr最新版...
  • u013490585
  • u013490585
  • 2014年10月30日 14:58
  • 1653

1、solr的安装启动及运行

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

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

1、下载solr6.5,windows下载zip,linux下载.tgz 2、解压 3、window中启动,从cmd中进入到solr的解压目录里的bin目录 执行 solr.cmd start 检查是...
  • liuzhen917
  • liuzhen917
  • 2017年04月26日 22:18
  • 3170

solr常用命令总结

查看帮助 bin/solr -help             可以看到solr有哪些子命令,如 start, stop, restart, status, healthcheck, c...
  • matthewei6
  • matthewei6
  • 2016年02月01日 21:41
  • 11547
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Apache Solr 启动
举报原因:
原因补充:

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