前面介绍了Solr在项目中的使用和构建高度可用、高度可扩展的Solr服务器的一些想法。但是光说不练假把式,现在开始,把Solr运行起来继续深入了解吧!
安装 安装JAVAApache Solr 6.3需要JRE1.8或以上版本的支持,而且Linux和Windows平台都支持。关于下载和配置就不再多说,网上这方面资料一搜一大把。不过需要注意的是,要运行Solr一定要设置JAVA_HOME环境变量,可以查看solr-6.3.0/bin文件夹下的solr(Windows查看solr.cmd)文件,里面有对JAVA_HOME环境变量的引用。
安装Solr可以在Solr的官方网站下载Solr的最新版本,我这里使用的是6.3.0版本。对于Linux/Unix/OSX系统,下载.tgz文件;对于Windows系统,下载.zip文件。当准备好Solr的压缩文件之后,我们唯一要做的一件事情就是把压缩包解压到我们指定的文件夹中。Windows下直接在图形界面下操作就可以了。Linux下的命令如下:
1 $ tar zxf solr-6.3.0.tgz
一旦解压缩,就算是安装好了,接下来就可以运行它了。
运行 启动Solr服务器进入Solr的解压缩文件中,运行bin/solr命令便可以启动solr。
1 $ bin/solr start
如果在Windows下,运行bin\solr.cmd文件。
1 bin\solr.cmd start
我是在Windows Server 2012下做的尝试,运行命令之后的效果如下:
这样Solr就在后台运行了,并且监听8983端口。
solr脚本命令允许你自定义如何启动Solr。
Solr脚本选项solr命令有一些选项,可以通过-help选项查看(在Windows中和Linux中的执行是完全相同的)。
1 solr.cmd -help
例如,要明确start命令的介绍,执行下面的命令:
1 solr.cmd start -help
在前台启动SolrSolr是一个服务器,一般情况下都是运行在后台(如上面启动的例子),尤其是在Unix/Linux系统中。但是Solr也可以运行在前台,只需执行简单的命令:
1 solr.cmd start -f
如果在Unix/Linux下,执行:
1 $ solr start -f
指定端口要改变Solr监听的端口,可以在启动的时候使用-p参数,例如:
1 solr.cmd start -p 8984
如果在Unix/Linux下,执行:
1 $ solr start -p 8984
停止Solr服务器当Solr运行在前台的时候,可以使用Ctrl+C命令停止服务器。但是运行在后台的时候,就需要使用stop命令了。例如:
1 solr.cmd stop -p 8983
如果在Unix/Linux下,执行:
1 $ solr stop -p 8983
注意:stop命令需要指定Solr监听的端口号,也可以使用-all参数替代端口号,不过将停止所有的Solr实例。例如:
1 solr.cmd stop -all
如果在Unix/Linux下,执行:
1 $ solr stop -all
启动指定的Solr内置实例Solr提供了一些有用的例子帮助我们学习Solr的关键特性。可以使用-e标签启动这些实例。例如,启动“dih”实例,你应该这样做:
1 solr.cmd -e dih
在Unix/Linux下,执行:
1 $ solr -e dih
检查Solr的执行状态如果你不确信Solr是否正在执行,可以使用status命令:
1 solr.cmd status
在Unix/Linux下,执行:
1 solr status
该命令将查找在你电脑上运行着的Solr实例,并且收集他们的基本信息,比如:版本,内存使用情况。
如果Solr成功启动,可以通过管理员界面查看运行情况。地址如下:
:8983/solr/
可能不同的机器上端口号会不一样。管理界面如下图:
如果Solr实例没有运行,浏览器将会报出无法链接到服务器的错误。
创建一个Core如果你们有使用示例的配置启动Solr,需要创建一个Core,以便能够索引和查询。可以通过执行下面的命令来完成:
1 solr.cmd create -c <name>
这个命令会创建一个Core,使用数据驱动Schema,它会在你添加文档做索引后尝试推断正确的字段类别。要看create命令所有的命令行选项,使用-help命令。如:
1 solr.cmd create -help
添加文档