solr的安装

1、官网
http://lucene.apache.org/solr/
下载 solr-4.10.3.zip

2、安装jdk7
export JAVA_HOME=/opt/java/jdk1.7.0_75
export JRE_HOME=/opt/java/jdk1.7.0_75/jre
export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib


3、解压tomcat
tar -zxvf apache-tomcat-7.0.57.tar.gz
mv apache-tomcat-7.0.57 tomcat-solr

4、主要软件
jdk-7u75-linux-x64.gz
apache-tomcat-7.0.57.tar.gz 
solr-4.10.3.tgz

解压
tar -zxvf solr-4.10.3.tgz

root@m1hadoop:/opt/solr# cp solr-4.10.3/example/webapps/solr.war .
mkdir data
cp -rf solr-4.10.3/example/solr data/

修改
/opt/solr/data/solr/collection1/conf/solrconfig.xml

<dataDir>${solr.data.dir:}</dataDir>
为:
<dataDir>${solr.data.dir:/opt/solr/data/solr/collection1/data}</dataDir>

5、在
root@m1hadoop:/opt/solr/solr# 目录下
执行
/opt/java/jdk1.6.0_43/bin/jar -xvf  solr.war
之后:
root@m1hadoop:/opt/solr/solr# ls
admin.html  css  favicon.ico  img  js  META-INF  tpl  WEB-INF

环境变量配置:
-Dsolr.solr.home=/opt/solr/data/solr


6、copy jar 包
cp -rf solr-4.10.3/example/lib/ext/*.jar solr/WEB-INF/lib/

7、创建class目录 copy log4j.properties
root@m1hadoop:/opt/solr/solr/WEB-INF# mkdir classes
root@m1hadoop:/opt/solr/solr/WEB-INF# cp /opt/solr/solr-4.10.3/example/resources/log4j.properties classes/
root@m1hadoop:/opt/solr/solr/WEB-INF# cd classes/
root@m1hadoop:/opt/solr/solr/WEB-INF/classes# ls
log4j.properties


8、copy  solr 目录到tomcat
root@m1hadoop:/opt/solr# cp -rf solr tomcat-solr/webapps/
root@m1hadoop:/opt/solr# cd tomcat-solr/webapps/
root@m1hadoop:/opt/solr/tomcat-solr/webapps# ls
docs  examples  host-manager  manager  ROOT  solr
root@m1hadoop:/opt/solr/tomcat-solr/webapps# cd solr/
root@m1hadoop:/opt/solr/tomcat-solr/webapps/solr# ls
admin.html  css  favicon.ico  img  js  META-INF  tpl  WEB-INF

9、修改catalina.sh

#   LOGGING_MANAGER (Optional) Override Tomcat's logging manager
#                   Example (all one line)
#                   LOGGING_MANAGER="-Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager"
# -----------------------------------------------------------------------------
export JAVA_OPTS="$JAVA_OPTS -Dsolr.solr.home=/opt/solr/data/solr"
export CATALINA_HOME=/opt/solr/tomcat-solr
export JAVA_HOME=/opt/java/jdk1.7.0_75
export CATALINA_PID=$CATALINA_HOME/logs/tomcat.pid
export JRE_HOME=$JAVA_HOME/jre

10、启动
root@m1hadoop:/opt/solr/tomcat-solr/bin# ./startup.sh
Using CATALINA_BASE:   /opt/solr/tomcat-solr
Using CATALINA_HOME:   /opt/solr/tomcat-solr
Using CATALINA_TMPDIR: /opt/solr/tomcat-solr/temp
Using JRE_HOME:        /opt/java/jdk1.7.0_75/jre
Using CLASSPATH:       /opt/solr/tomcat-solr/bin/bootstrap.jar:/opt/solr/tomcat-solr/bin/tomcat-juli.jar
Using CATALINA_PID:    /opt/solr/tomcat-solr/logs/tomcat.pid
Tomcat started.

11、访问
http://10.155.16.63:8080/solr/#/
------------------------------------------------------------------------
12、添加索引
cat /opt/solr/solr-4.10.3/example/exampledocs/solr.xml

<add>
<doc>
  <field name="id">SOLR1000</field>
  <field name="name">Solr, the Enterprise Search Server</field>
  <field name="manu">Apache Software Foundation</field>
  <field name="cat">software</field>
  <field name="cat">search</field>
  <field name="features">Advanced Full-Text Search Capabilities using Lucene</field>
  <field name="features">Optimized for High Volume Web Traffic</field>
  <field name="features">Standards Based Open Interfaces - XML and HTTP</field>
  <field name="features">Comprehensive HTML Administration Interfaces</field>
  <field name="features">Scalability - Efficient Replication to other Solr Search Servers</field>
  <field name="features">Flexible and Adaptable with XML configuration and Schema</field>
  <field name="features">Good unicode support: h&#xE9;llo (hello with an accent over the e)</field>
  <field name="price">0</field>
  <field name="popularity">10</field>
  <field name="inStock">true</field>
  <field name="incubationdate_dt">2006-01-17T00:00:00.000Z</field>
</doc>
</add>

那么怎样能够将这个xml传送到solr进行索引呢,这就要用到post.jar。开启命令行,进入post.jar所在文件夹,运行:

root@m1hadoop:/opt/solr/solr-4.10.3/example/exampledocs# java -Durl=http://10.155.11.74:8080/solr/update -Dcommit=yes -jar post.jar *.xml

http://10.155.16.63:8080/solr/update

在/opt/solr/solr-4.10.3/example/exampledocs目录下
root@m1hadoop:/opt/solr/solr-4.10.3/example/exampledocs# java -Durl=http://10.155.16.63:8080/solr/update -Dcommit=yes -jar post.jar *.xml
SimplePostTool version 1.5
Posting files to base url http://10.155.16.63:8080/solr/update using content-type application/xml..
POSTing file gb18030-example.xml
POSTing file hd.xml
POSTing file ipod_other.xml
POSTing file ipod_video.xml
POSTing file manufacturers.xml
POSTing file mem.xml
POSTing file money.xml
POSTing file monitor2.xml
POSTing file monitor.xml
POSTing file mp500.xml
POSTing file sd500.xml
POSTing file solr.xml
POSTing file utf8-example.xml
POSTing file vidcard.xml
14 files indexed.
COMMITting Solr index changes to http://10.155.16.63:8080/solr/update..
Time spent: 0:00:00.757


http://10.155.16.63:8080/solr/#/collection1/query
下执行 excute query
可以看到数据



------------------------------------------------------------------
13、集成ikanalyzer中文分词器
参考 http://www.cnblogs.com/madyina/p/4131751.html
http://code.google.com/p/ik-analyzer/downloads/list下载IK Analyzer 2012FF_hf1.zip
解压后:
将IKAnalyzer2012FF_u1.jar包copy到 /opt/solr/tomcat-solr/webapps/solr/WEB-INF/lib/ 下
将IKAnalyzer.cfg.xml、stopword.dic  copy到 /opt/solr/tomcat-solr/webapps/solr/WEB-INF/classes

14、修改/opt/solr/data/solr/collection1/conf
vim schema.xml
在第一个节点内添加如下配置:
<fieldType name="text_ik" class="solr.TextField">
<analyzer type="index" isMaxWordLength="false" class="org.wltea.analyzer.lucene.IKAnalyzer"/>
<analyzer type="query" isMaxWordLength="true" class="org.wltea.analyzer.lucene.IKAnalyzer"/>
 </fieldType>

将对应需要用ik分词的字段的type改为以上定义的name值 text_ik(大约125行处):
<field name="sku" type="text_en_splitting_tight" indexed="true" stored="true" omitNorms="true"/>
   <field name="name" type="text_ik" indexed="true" stored="true"/>
   <field name="manu" type="text_ik" indexed="true" stored="true" omitNorms="true"/>


分词效果:



--------------------------------------------------------------------------
15、参考
http://blog.csdn.net/awj3584/article/details/16963525

猜你喜欢

转载自wangqiaowqo.iteye.com/blog/2193326