一 . 简介
官网:http://lucene.apache.org/solr/
下载地址:http://archive.apache.org/dist/lucene/solr/
- Solr 是Apache下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务器。Solr提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展,并对索引、搜索性能进行了优化。Solr是一个全文检索服务器,只需要进行配置就可以实现全文检索服务。
二 . 单机版solr安装
- 安装JDK
tar jdk-7u80-linux-x64.tar.gz
mv jdk1.7.0_80/ /usr/local/jdk7
vi /etc/profile
修改环境变量如下
export JAVA_HOME=/user/local/jdk7
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
. /etc/profile
或者source /etc/profile
重新加载系统环境变量
- 安装tomcat
tar -zxf apache-tomcat-7.0.70.tar.gz
mv apache-tomcat-7.0.70 /usr/local/solr/
cd /usr/local/solr/
mkdir tomcat
mv bin conf/ lib/ LICENSE logs/ NOTICE RELEASE-NOTES RUNNING.txt temp/ webapps/ work/ tomcat/
cd tomcat/
bin/startup.sh
#查看tomcat输出的日志信息,看tomcat是否真的启动成功
tailf logs/catalina.out
#ctrl+c退出tailf命令
#关闭防火墙或者打开8080端口
vi /etc/sysconfig/iptables
service iptables restart
- 导入Solr项目
tar -zxf solr-4.10.3.tgz.tgz
- 将
solr-4.10.4/example/lib/ext
下的Solr依赖的jar包放到solr-4.10.4/example/webapps/solr.war
这个项目里的lib目录, 获得一个完整的项目solr - 配置solr的配置文件
创建solrhome。solrhome是存放solr服务器所有配置文件的目录。
mkdir /usr/local/solr/solrhome
cp -r /root/myapps/solr-4.10.3/example/solr/* usr/local/solr/solrhome/
- 修改solr项目的
web.xml
配置配置文件的路径:
- 这样默认的solr项目就配置好了
- 启动tomcat
/usr/local/tomcat7/bin/startup.sh
- 浏览器访问项目url, 我的是
http://192.168.153.22:8080/solr
主界面
二 . IK Analyser中文分词插件扩展
IK Analyser简介
- 官网: https://gitee.com/wltea/IK-Analyzer-2012FF
- 从2006年12月推出1.0版开始,IKAnalyzer已经推出 了3个大版本。最初,它是以开源项目Lucene为应用主体的,结合词典分词和文法分析算法的中文分词组件。新版本的IKAnalyzer3.0则发展为 面向Java的公用分词组件,独立于Lucene项目,同时提供了对Lucene的默认优化实现。
使用方法
-
将IK的jar包放入solr项目的lib目录
cp IKAnalyzer2012FF_u1.jar /usr/local/solrTomcat/webapps/solr/WEB-INF/lib/
-
将IK的配置文件和用户词典导入到项目
WEB-INF/classes
目录下mkdir /usr/local/solrTomcat/webapps/solr/WEB-INF/classes cp IKAnalyzer.cfg.xml ext_stopword.dic mydict.dic /usr/local/solrTomcat/webapps/solr/WEB-INF/classes
配置fieldType, 需要在
solrhome/collection1/conf/schema.xml
中配置。添加如下代码:
<fieldType name="text_ik" class="solr.TextField">
<analyzer class="org.wltea.analyzer.lucene.IKAnalyzer"/>
</fieldType>
这个操作会为solr添加一个分词插件叫做text_ik
-
看效果: