solr 安装
1:solr简介
solr是一个开源的搜索引擎,是对lucene做了封装,对外提供类似于webservice接口,
可以使用http请求的方式对solr进行操作。
lucene、solr、elasticsearch是java领域比较常用的搜索工具。
lucene比较底层。
solr对lucene做了封装,可以简单的实现一个站内搜索功能,solr4.0之后
出现了solrcloud,也支持分布式存储和搜索。
elasticsearch对lucene做了封装,并且elasticsearch是天生支持分布式的。
2:solr的特点
通过http协议对solr进行操作
增加了缓存功能,查询更快
提供的有web界面
支持结果分类(fact),类似于数据库中的groupby
支持分布式(solrcloud)
3:solr安装部署启动
必须先安装JDK,并设置JAVA_HOME环境变量,jdk的版本不能低于1.7
下载,解压,启动
cd /usr/local
tar -zxvf solr-4.10.4
cd solr-4.10.4/example
java -jar start.jar
solr启动之后默认监听8983端口,可以访问http://ip:8983/solr进行访问验证
4:solr的两种启动方式
1):java -jar start.jar
默认在前台启动。
后台启动:java -jar start.jar --daemon &(这样启动之后只能kill杀进程)
后台启动:java -DSTOP.KEY=solr -DSTOP.PORT=8984 -jar start.jar --daemon &
针对这种启动方式,可以使用下面命令停止solr
java -DSTOP.KEY=solr -DSTOP.PORT=8984 -jar start.jar --stop
指定端口启动solr
java -Djetty.port=8984 -jar start.jar
2):bin/solr start
默认在后台启动,使用bin/solr start -f可以在前台启动
指定端口启动:bin/solr start -p 8984
停止solr:bin/solr stop -p 8984或者 bin/solr stop -all
查看启动的solr服务:bin/solr -i
注意:solr脚本启动底层也是调用了start.jar
3):使用tomcat启动solr
暂时不建议使用,可以参考PPT或者提供的文档<使用tomcat启动solr.txt>
5:solr-web项目位置
默认情况下,使用java -jar start.jar启动solr的时候,会在当前目录下的webapps目录
下面找solr.war,并且还会把这个项目解压到当前目录下的solr-webapp/webapp目录下。
如果使用的是bin/solr脚本启动的话,会默认到SOLR_HOME下面找example目录(通过脚本可以发现),
会找这个目录下面的webapps/solr.war 解压到solr-webapp/webapp目录下,
如果修改了SOLR_HOME下面的example文件名(mv example crxy)
那么使用java -jar start.jar 方式启动没问题。
使用bin/solr启动则会报错。
所以需要在启动的时候指定一下修改之后的文件夹名称
bin/solr start -d crxy
6:solr中的solr.solr.home属性
这个属性指定了solr core的根目录。
默认情况下会找exampl下的solr目录。
如果这个目录的名称被修改了之后,使用bin/solr脚本启动的时候就必须要指定了
假设把名称改为 solr2
mv expample/solr example/solr2
则执行是需要这样指定
bin/solr start -s solr2
如果使用tomcat启动的话,可以参考<使用tomcat启动solr.txt>设置这个属性。
7:solr启动总结
使用java -jar start.jar方式启动的时候
默认会在当前目录下的webapps/下面找solr.war
会在在当前目录下的solr中找solr core的配置信息
使用bin/solr脚本启动的话
默认是在example下面找solr的web项目和sorl core的根目录。
8:solr管理界面
如果使用的IE版本过低的话,访问会报错。
访问地址:http://ip:8983/solr
9:向solr中索引数据
先使用sorl提供的测试数据
cd solr-4.10.4/example/exampledocs
java -jar post.jar hd.xml
这样会向solr中添加两条数据。
注意:这个索引过程会找本机的solr服务,使用http://localhost:8983/solr/update 进行访问。
10:schema.xml文件分析
field:定义字段的一些基本属性,字段名称,字段类型,是否存储,是否建立索引。。。
dynamicField:动态字段,可以通过提前设置一些动态字段,实现后期动态增加字段。
动态字段的名称可以使用通配符,一般使用*,这个*只能在名称的前面或者后面。
不能单独使用*。
uniqueKey:设置主键字段。
copyfield:拷贝字段。可以把多个字段的内容拷贝到一个字段中,方便后期查询。
fieldtype:在field标签中,type属性的值就是在这定义的。可以设置一些字段的解析方式。
solr 安装的更多相关文章
- 03 Apache Solr: 安装和运行
前面介绍了Solr在项目中的使用和构建高度可用.高度可扩展的Solr服务器的一些想法.但是光说不练假把式,现在开始,把Solr运行起来继续深入了解吧! 安装 安装JAVA Apache So ...
- solr安装笔记与定时器任务
一:solr启动 目前solr最高版本为5.5.0版本,很多solr安装都是说将server文件copy到tomcat中,但是solr版本自带有jetty的启动方式 首先下载solr-5.5.0版本, ...
- Solr安装过程
Solr安装过程 下载相关资料 solr 4.2.0 http://lucene.apache.org/solr/ 期间安装过 solr 4.3.0 很可惜没有配置成功 apache-tomcat-7 ...
- Solr安装入门、查询详解
Solr安装入门:http://www.importnew.com/12607.html 查询详解:http://www.360doc.com/content/14/0306/18/203871_35 ...
- Lucene/Solr搜索引擎开发笔记 - 第2章 Solr安装与部署(Tomcat篇)
一.安装环境 图1-1 Tomcat和Solr的版本 我本机目前使用的Java版本为JDK 1.8,因为Solr 4.9要求Java版本为1.7+,请注意. 二.Solr部署到Tomcat流程 图1- ...
- 【Solr初探】Solr安装,启动,查询,索引
1. 安装&启动 官网:http://lucene.apache.org/solr/ 下载源代码,解压,进入根目录(我把solr放在/usr/local/solr下) 在/usr/local/ ...
- Solr安装(Tomcat)
Solr安装(Tomcat) 安装环境 Windows 7 64bit Apache-tomcat-8.0.9-windows-x64 Solr-4.9.0 JDK 1.8.0_05 64bit ...
- Solr系列一:Solr(Solr介绍、Solr应用架构、Solr安装使用)
一.前言 前面已经学习了Lucene的分词.索引详解.搜索详解的知识,已经知道开发一个搜索引擎的流程了.现在就会有这样的一个问题:如果其他的系统也需要使用开发的搜索引擎怎么办呢?这个时候就需要把开发的 ...
- Solr安装入门
Solr安装入门:http://www.importnew.com/12607.html 查询详解:http://www.360doc.com/content/14/0306/18/203871_35 ...
随机推荐
- ActiveMQ笔记(2):基于ZooKeeper的HA方案
activemq官网给出了3种master/slave的HA方案,详见:http://activemq.apache.org/masterslave.html,基于共享文件目录,db,zookeepe ...
- [LeetCode] Ternary Expression Parser 三元表达式解析器
Given a string representing arbitrarily nested ternary expressions, calculate the result of the expr ...
- Spark Rdd coalesce()方法和repartition()方法
在Spark的Rdd中,Rdd是分区的. 有时候需要重新设置Rdd的分区数量,比如Rdd的分区中,Rdd分区比较多,但是每个Rdd的数据量比较小,需要设置一个比较合理的分区.或者需要把Rdd的分区数量 ...
- NPOI操作EXCEL(三)——反射机制进行excel表格数据的解析
我们先来回忆回忆上篇文章讲到的通过xml配置文件实现excel批量模板解析的整体思路: 1.对每个excel模板制定xml配置规则集,实现xml配置文件的解析服务 2.为每个excel模板制定DTO, ...
- 控制反转(IOC)
对于很多大中型项目为了实现解耦都用到了控制反转. 常用的控制反转有unity,autoface,spring.Net 使用它们的目的归根结底就一个:避免了直接new一个对象. 今天抽时间将三种控制反转 ...
- [转]HQL中的子查询
原文地址:http://blog.csdn.net/xb12369/article/details/8638683 子查询: 子查询是SQL语句中非常重要的功能特性,它可以在SQL语句中利用另外一 ...
- PHP学习总结
<?php /* PHP简介: PHP是什么:PHP是一种创建动态交互性站点的强有力的服务器端脚步语言 PHP代表Hypertext Preprocessor PHP是一种使用广泛的开源的脚本语 ...
- Uncaught SyntaxError: Invalid or unexpected token
出现错误的地方:在Jquery中,调用有参数的方法,动态传递参数时报错 出现错误的原因: 动态传递参数的时候,参数中有换行符 错误的解决:参数传递之前,将换行符替换 var temp = model ...
- console的花式用法
1.百度的招聘启示 如图: 下面是输出代码: if(window.console){ var cons = console; if(cons){ cons.log("%c\n ", ...
- eclipse运行没问题,tomcat以脚本启动后插入数据库的中文会乱码
记一次部署工程的时候遇到的问题 部署war包到win7的时候发现,布上去后插入数据库的中文会乱码,然后发现用eclipse运行源码没问题,一开始以为是war打出来的时候编码错误,然后将eclipse的 ...