Solr在Linux中的安装
最近面试时问到solr的问题,但做的时间有点长了,都忘的差不多了,有点遗憾。所以现在巩固一下,也做下笔记。
由于各Linux开发厂商的不同,因此不同开发厂商的Linux版本操作细节可能也不一样,今天就来说一下CentOS下的安装
一 ,安装JDK步骤
solr是java开发的,安装solr需要有jdk,jdk1.7
1.下载jdk
2.从windows上传到linux
在CRT下,Alt+P
3.检查系统上是否安装了jdk(若安装了就需要先卸载再使用我们自己的)
java -version
4.查看出安装的java的软件包
rpm -qa | grep java
5.卸载linux自带的jdk
rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.66.1.13.0.el6.i686 rpm -e --nodeps java-1.7.0-openjdk-1.7.0.45-2.4.3.3.el6.i686 tzdata-java-2013g-1.el6.noarch
6.在 /usr/local 新建一个文件夹 java
mkdir /usr/local/java
7.移动 jdk.....gz 到 /usr/local/java下
mv jdk-7u72-linux-i586.gz /usr/local/java
8.进入 /usr/local/java 目录,解压jdk
cd /usr/local/java
tar -zxvf jdk-7u72-linux-i586.gz
9.配置环境变量
vi /etc/profile
#在文件的最后面添加如下代码
export JAVA_HOME=/usr/local/java/jdk1.7.0_72 export PATH=$JAVA_HOME/bin:$PATH
10.保存退出
Esc :wq
11.重新加载配置文件
source /etc/profile
二,在Linux上安装Tomcat
1.安装Tomcat步骤
使用Tomcat部署solr
1.下载tomcat
2.上传到linux
多学一招: 在crt上 使用 alt+p 将windows上的软件拖进去即可(root目录)
3.在 /usr/local 新建一个文件夹tomcat
mkdir /usr/local/tomcat
4.移动 tomcat...tar.gz 到 /usr/local/tomcat
mv apache-tomcat-7.0.52.tar.gz /usr/local/tomcat/
5.进入/usr/local/tomcat目录,解压Tomcat
cd /usr/local/tomcat tar -zxvf apache-tomcat-7.0.52.tar.gz
6.进入 /usr/local/tomcat/apache-tomcat-7.0.52/bin
cd /usr/local/tomcat/apache-tomcat-7.0.52/bin
7.启动tomcat
方式1: sh startup.sh 方式2: ./startup.sh
8.修改防火墙的规则
方式1:service iptables stop 关闭防火墙 方式2:放行8080 端口 修改配置文件 cd /etc/sysconfig vi iptables 复制(yy , p) -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT 改成 -A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT 重启加载防火墙或者重启防火墙 service iptables reload 或者 service iptables restart
三,安装solr
1,准备
1.在CRT下,Alt+P 上传solr压缩包
2.移动
[[email protected] ~]# mv solr-4.10.3.tgz.tgz /usr/local/
3.解压
[[email protected] ~]# cd /usr/local/ [[email protected] local]# tar -zxf solr-4.10.3.tgz.tgz
4.停止之前运行的Tomcat
[[email protected] local]# /usr/local/tomcat-solr/bin/shutdown.sh
5. 删除Tomcat的webapps文件夹所有文件,并创建ROOT文件夹
[[email protected] local]# cd tomcat/webapps/ [[email protected] webapps]# rm -rf * [[email protected] webapps]# mkdir ROOT
6.解压solr.war
[[email protected] ROOT]# cp -v /usr/local/solr4.10.3/example/webapps/solr.war ./ [[email protected] ROOT]# jar -xvf solr.war7.删除war包
[[email protected] ROOT]# rm -f solr.war
2,创建solrhome
Solrhome目录,SolrHome是Solr运行的主目录,目录中包括了运行Solr实例所有的配置文件和数据文件,Solr实例
就是 SolrCore,一个SolrHome可以包括多个SolrCore(Solr实例),每个SolrCore提供单独的搜索和索引服务
[[email protected] classes]# cd /usr/local
[[email protected] classes]# cd /usr/local
2.1 创建solr文件
[[email protected] local]# mkdir solr [[email protected] local]# cd solr
2.2 复制/usr/local/solr-4.10.3/example/solr 到新建的当前solrhome目录中
[[email protected] solr]# cp -vr /usr/local/solr-4.10.3/example/solr solrhome
3,关联solr及solrhome
需要修改solr工程的web.xml文件
[[email protected] solrhome]# cd /usr/local/tomcat-solr/webapps/ROOT/WEB-INF/ [[email protected] WEB-INF]# vim web.xml
切到底行模式,跳到40行 :40 按 i 进入编辑模式 删除注释,并修改地址
启动tomcat
[[email protected] WEB-INF]# /usr/local/tomcat-solr/bin/startup.sh
访问地址 http://192.168.37.161:8080/
三, 配置中文分词器
停止Tomcat
[[email protected] example]# /usr/local/tomcat-solr/bin/shutdown.sh
在SFTP窗口上传,alt+p
把IKAnalyzer2012FF_u1.jar添加到solr/WEB-INF/lib目录下
[[email protected] WEB-INF]# cd /usr/local/tomcat-solr/webapps/ROOT/WEB-INF/lib/
移动到当前目录
[[email protected] lib]# mv -v /root/IKAnalyzer2012FF_u1.jar ./
复制IKAnalyzer的配置文件和自定义词典和停用词词典到Tomcat服务
在SFTP窗口上传,alt+p
[[email protected] lib]# cd ../classes/
扩展词库
[[email protected] classes]# mv /root/ext.dic ./
IK分词器核心配置文件
[[email protected] classes]# mv /root/IKAnalyzer.cfg.xml ./
停用词库
[[email protected] classes]# mv /root/stopword.dic ./
在schema.xml配置中文分词器
[[email protected] classes]# cd /usr/local/solr/solrhome/collection1/conf [[email protected] conf]# vim schema.xml
在最后面添加如下(打开文件后:输入GG到文档最后,输入gg到文档最前面):
<fieldType name="text_ik" class="solr.TextField"> <analyzer class="org.wltea.analyzer.lucene.IKAnalyzer"/> </fieldType> <field name="content_ik" type="text_ik" indexed="true" stored="true" />
点击左上角的Esc键,退出编辑模式, 再点击 :wq 切换到底行模式并保存退出
重启tomcat
[[email protected] conf]# /usr/local/tomcat-solr/bin/startup.sh
大功告成,收工!