【linux】服务器安装solr8.4.0

往期文章:
1.解决你所需的linux指令
2.VM虚拟机 CentOS 7安装
3.【Linux】docker卸载与安装及使用
4.【Linux】CentOS-7下安装JDK详细过程
5.【Linux】CentOS-7下安装tomcat
6.【linux】Jenkins部署在Tomcat服务器下
7.【Linux】CentOS-7下安装mysql详细过程
8.Nginx实现负载均衡(nginx + tomcat应用分布式)
9.docker安装Redis springboot中配置密码
10.【Linux】配置fastdfs和nginx图片服务器
11.Nginx 安装启动 搭建图片服务器
12.服务器中部署 禅道 (团队开发的bug提交管理工具)
13.【linux】服务器安装solr8.4.0

一.jen中安装solr8.4.0

  1. docker拉取solr

docker pull solr:8.4.0

  1. 创建并运行的solr容器

docker run --name solr -d -p 8983:8983 solr:8.4.0

1.run 运行容器
2.-d 后台运行
3.-p 容器端口和宿机端口映射
4.-- name 容器名称
5. solr 指镜像名称

注意:如果没有开启防火墙则跳过,如果开启防火墙了需要执行下面的代码;

运行之后我们防火墙放行端口号的命令:

firewall-cmd --zone=public --add-port=8983/tcp --permanent

加载刚刚防火墙放行端口:

firewall-cmd --reload

使用服务器的需要去安全组设置端口即可:

  1. 创建核心

docker exec -it --user=solr solr bin/solr create_core -c Ik_core

在这里插入图片描述

之后我们可以在浏览器输入IP:8389 看看有没有页面出现;

在这里插入图片描述

solr 配置IK中文分词

jar的百度网盘:https://pan.baidu.com/s/1ExTcCVfn_zltmGJDhxWhgQ
提取码:zxxp
  1. 推荐在本地先解压然后把四个jar传到linux //usr/local/IK (IK需要自己创建文件夹)

mkdir -p /usr/local/IK 在这里放jar同时我们从本地拿需要用到文件/jar 到在这里

cd /usr/local/IK

docker cp  ik-analyzer-8.3.0.jar solr:/opt/solr-8.4.0/server/solr-webapp/webapp/WEB-INF/lib/
docker cp  ik-analyzer-solr7-7.x.jar solr:/opt/solr-8.4.0/server/solr-webapp/webapp/WEB-INF/lib/
docker cp  solr-dataimporthandler-8.4.0.jar solr:/opt/solr-8.4.0/server/solr-webapp/webapp/WEB-INF/lib/
docker cp solr-dataimporthandler-extras-8.4.0.jar  solr:/opt/solr-8.4.0/server/solr-webapp/webapp/WEB-INF/lib/

复制配置文件:

  1. 使用root用户(超级管理)进入solr 的容器里创建文件夹
docker exec  -it --user=root solr /bin/bash
cd /opt/solr-8.4.0/server/solr-webapp/webapp/WEB-INF
创建文件夹(classes)
mkdir classes
退出容器:
exit
docker cp IKAnalyzer.cfg.xml solr:/opt/solr-8.4.0/server/solr-webapp/webapp/WEB-INF/classes/
  1. 修改managed-schema:进去solr的容器因为创建核心名称默认的路径是在/var/solr/data/核心名称 而solr 默认在opt/solr-8.4.0/

因此我们要到solr 的容器命令:

docker exec -it --user=root solr /bin/bash

  1. 下载vim编辑:
apt-get  update
apt-get install vim

cd /var/solr/data/Ik_core/conf
vi managed-schema  

在最下面添加:

<fieldType name="text_ik" class="solr.TextField">		
	<analyzer type="index">		
		<tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="false" />		
		<filter class="solr.LowerCaseFilterFactory"/>			
		</analyzer>		
		<analyzer type="query">		
		<tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="true" />	
	<filter class="solr.LowerCaseFilterFactory"/>	
	</analyzer>			
</fieldType>

在这里插入图片描述

vi solrconfig.xml

在最下面添加:

<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler"> 
      <lst name="defaults">
             <str name="config">db-data-config.xml</str>  
       </lst>  
    </requestHandler>

在这里插入图片描述

ok,配置IK 完成,退出容器:exit

  1. 重启solr 的容器:
    docker restart solr

在浏览器输入IP:8983

二.tomcat下部署solr

链接:https://pan.baidu.com/s/1dyI24sQaMqhB8xav51y6_A 
提取码:uagp 
复制这段内容后打开百度网盘手机App,操作更方便哦
  1. 需要的安装包:apache-tomcat-8.0.5.tar.gz、solr-4.10.3.tgz.tgz(jdk自行安装)
    tomcat 8.0以上 jdk1.8以上
    在这里插入图片描述

  2. 解压tomcat并创建solr文件夹

tar -zxf apache-tomcat-8.0.5.tar.gz
mkdir /usr/local/solr
  1. 将tomcat解压后的文件夹拷贝到solr的tomcat文件夹中

cp apache-tomcat-8.0.5 /usr/local/solr/tomcat -r

  1. 把solr的压缩包上传到服务器后并解压,然后把/root/solr-4.10.3/dist/solr-4.10.3.war包部署到tomcat下。并改名为solr.war
tar -zxf solr-4.10.3.tgz.tgz
cp solr-4.10.3.war /usr/local/solr/tomcat/webapps/solr.war
  1. 解压war包。启动tomcat自动解压。然后关闭tomcat,删除war包
    ./startup.sh
问题:
用./startup.sh启动时候提示权限不够
chmod u+x *.sh
  1. /root/solr-4.10.3/example/lib/ext 目录下所有的jar包复制到solr工程中
    进入之前解压缩的文件中solr-4.10.3\example\lib\ext下的jar 拷贝到solr工程中的web-inf\lib目录下

cp * /usr/local/solr/tomcat/webapps/solr/WEB-INF/lib/

  1. 创建solrhome文件夹,该文件夹用来存放solr服务器所有配置文件。将/root/solr-4.10.3/example中的solr文件夹拷贝至solrhome

cp -r solr /usr/local/solr/solrhome

  1. 关联solr数据存放的地址,需要修改工程中solr的web.xml文件
<env-entry>
       <env-entry-name>solr/home</env-entry-name>
       <env-entry-value>/usr/local/solr/solrhome</env-entry-value>
       <env-entry-type>java.lang.String</env-entry-type>
    </env-entry>
  1. 启动tomcat

中文分析器配置

  1. 把IK-Analyzer分析器的文件夹上传到服务器

  2. 把分析器的jar包添加到solr工程中

cp IKAnalyzer2012FF_u1.jar /usr/local/solr/tomcat/webapps/solr/WEB-INF/lib/

  1. 把IKAnalyzer需要的扩展词典及停用词词典、配置文件复制到solr工程的WEB-INF/classes文件夹中

cp IKAnalyzer.cfg.xml ext_stopword.dic mydict.dic /usr/local/solr/tomcat/webapps/solr/WEB-INF/classes

  1. 修改solrhome\collection1\conf目录下的schema.xml文件,配置一个fieldType,使用IK分词,在solrhome/collection1/conf/schema.xml中配置filedType
<fieldType name="text_ik" class="solr.TextField" >
			 <analyzer class="org.wltea.analyzer.lucene.IKAnalyzer"/>
 </fieldType>

业务字段配置

  1. solrhome/collection1/conf/schema.xml中配置,根据业务需要选择相应的字段对应solr的字段
<field name="landlady_id"  type="text_ik" indexed="true"  stored="true" />
<field name="province_id"  type="text_ik" indexed="true"  stored="true" />
<field name="city_id"  type="text_ik" indexed="true"  stored="true" />
<field name="area_id"  type="text_ik" indexed="true"  stored="true" />
<field name="province_name"  type="text_ik" indexed="true"  stored="true" />
<field name="city_name"  type="text_ik" indexed="true"  stored="true" />
<field name="area_name"  type="text_ik" indexed="true"  stored="true" />
<field name="residential_quarters"  type="text_ik" indexed="true"  stored="true" />
<field name="street_name"  type="text_ik" indexed="true"  stored="true" />
<field name="lou_no"  type="text_ik" indexed="true"  stored="true" />
<field name="house_no"  type="text_ik" indexed="true"  stored="true" />
<field name="house_type"  type="text_ik" indexed="true"  stored="true" />
<field name="dept_info"  type="text_ik" indexed="true"  stored="true" />
<field name="pid"  type="text_ik" indexed="true"  stored="true" />
<field name="longitude"  type="text_ik" indexed="true"  stored="true" />
<field name="latitude"  type="text_ik" indexed="true"  stored="true" />
<field name="state"  type="text_ik" indexed="true"  stored="true" />
<field name="del_flag"  type="text_ik" indexed="true"  stored="true" />
<field name="create_time"  type="text_ik" indexed="true"  stored="true" />
<field name="update_time"  type="text_ik" indexed="true"  stored="true" />
<field name="orientation"  type="text_ik" indexed="true"  stored="true" />
<field name="landlady_name"  type="text_ik" indexed="true"  stored="true" />
<field name="landlady_telphone"  type="text_ik" indexed="true"  stored="true" />
<field name="operator_id"  type="text_ik" indexed="true"  stored="true" />
<field name="signing_start_time"  type="text_ik" indexed="true"  stored="true" />
<field name="signing_end_time"  type="text_ik" indexed="true"  stored="true" />
<field name="landlady_price"  type="double" indexed="true"  stored="true" />
  1. 重启tomcat
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值