加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

solr安装记录

发布时间:2020-12-14 04:23:51 所属栏目:大数据 来源:网络整理
导读:[[email?protected] bin]# ./solr start -force *** [WARN] *** Your open file limit is currently 1024. ? ?It should be set to 65000 to avoid operational disruption. ?If you no longer wish to see this warning,set SOLR_ULIMIT_CHECKS to false in

[[email?protected] bin]# ./solr start -force
*** [WARN] *** Your open file limit is currently 1024. ?
?It should be set to 65000 to avoid operational disruption.
?If you no longer wish to see this warning,set SOLR_ULIMIT_CHECKS to false in your profile or solr.in.sh
*** [WARN] ***? Your Max Processes Limit is currently 29967.
?It should be set to 65000 to avoid operational disruption.
?If you no longer wish to see this warning,set SOLR_ULIMIT_CHECKS to false in your profile or solr.in.sh
Waiting up to 180 seconds to see Solr running on port 8983 [|] ?
Started Solr server on port 8983 (pid=22343). Happy searching!

[[email?protected] bin]# cd ..

?

?

?

一、准备环境

1、一台linux服务器(Centos7)
2、安装jdk8环境

3、准备solr7.8安装包

二、安装(我这里使用的是solr自带的应用容器,也可以集成到tomcat)

1)从官网下载最新solr

wget http://mirrors.shuosc.org/apache/lucene/solr/7.4.0/solr-7.4.0.tgz

2)解压,安装

tar -zxvf solr-7.2.0.tgz

3)相关命令

??? bin/solr stop -all ?? ??? ?关闭solr服务
??? bin/solr start -force ?? ??? ?开启solr服务
??? bin/solr status?? ??? ??? ?查看solr服务状态

三、使用solr

1、点击Core Admin

这里写图片描述

2、按照步骤去创建,然后点击确认会出现

这里写图片描述

3、这个错误是因为找不到对应的配置文件,进入server/solr/configsets/_default/直接把里面的conf 复制到 你新建的core中 你新建的core在server/solr目录下

命令如下:
1、进入到server/solr/configsets/_default下

cd /usr/local/install/solr7.4.0/server/solr/configsets/_default/

2、然后复制到新建的test中

cp -r conf /usr/local/install/solr7.4.0/server/solr/test/

3、到这儿core已创建好,相应的操作可以去网上寻找,我在这就不详细说明

三、连接mysql数据库

1)首先处理jar

mysql-connector-java-x.x.x.jar??? solr-dataimporthandler-extras-5.1.0.jar??? solr-dataimporthandler-7.1.0.jar

拷贝到 solrserversolr-webappwebappWEB-INFlib 下

1)配置连接信息

找到你新建的 core 下的solrconfig.xml文件(solrconfig.xml 文件所在目录是: solrserversolrtestconf),打开找到第一个requestHandler,在他下面加入如下内容

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

再在你创建的core目录的conf下创建data-config.xml文件,内容如下

??? <?xml version="1.0" encoding="UTF-8"?>
??? <dataConfig>
??????? <dataSource type="JdbcDataSource"
??????????????????? driver="com.mysql.jdbc.Driver"
??????????????????? url="jdbc:mysql://192.168.1.105:3306/solr"
??????????????????? user="root"
??????????????????? password="root" />
??????? <document>
??????????? <entity name="person" query="select * from user">
??????????????? <field column="ID" name="id" />
??????????????? <field column="name" name="name" />
??????????????? <field column="passward" name="passward" />
??????????? </entity>
??????? </document>
??? </dataConfig>

??????? dataSource不多说,一看就明白,

??????? entity --代表数据库表,column--代表数据库表字段,name--代表solr中字段名

??????? (注意:创建这个文件的时候第一行不能有空格或者空行,否则报错)

在managed-schema文件中添加对应于数据库字段的field,建议在 solr 可视化界面操作。当然,一定要手动修改 managed-schema 文件也不是不可以,但是每次更改完需要重新加载 Core,或者粗暴一点直接重新启动solr也可以。那么,直接修改 managed-schema 文件的。到这里你应该能联系上数据库了,也可以导入数据了。
--------------------- ?
作者:csdn_hzl ?
来源:CSDN ?
原文:https://blog.csdn.net/csdn_huzeliang/article/details/80876200 ?
版权声明:本文为博主原创文章,转载请附上博文链接!

?


?

?

solr 7配置中文分词器????这里示例配置solr官方提供的Smartcn的中文分词、IK的中文分词及拼音分词1、配置smartcn中文分词器??? solr安装包有提供Smartcn中文分词架包,在SOLR_ROOT/contrib/analysis-extras/lucene-libs/下,我这里使用solr 7.2.1,所以架包名称为lucene-analyzers-smartcn-7.2.1.jar??? 把smartcn中文分词器架包复制到solr项目的WEB-INF/lib目录下cp /usr/local/solr-7.2.1/contrib/analysis-extras/lucene-libs/lucene-analyzers-smartcn-7.2.1.jar /usr/local/solr/tomcat/webapps/solr/WEB-INF/lib/??? 1??? 配置 fieldType??? 找到solrhome/${collection}/conf/managed-schema??? 添加smartch中文分词器配置?<schema>??? <!-- 配置中文分词器 -->??? <fieldType name="text_smartcn" class="solr.TextField" positionIncrementGap="100">??????? <analyzer type="index">??????????? <tokenizer class="org.apache.lucene.analysis.cn.smart.HMMChineseTokenizerFactory"/>??????? </analyzer>??????? <analyzer type="query">??????????? <tokenizer class="org.apache.lucene.analysis.cn.smart.HMMChineseTokenizerFactory"/>??????? </analyzer>??? </fieldType></schema>??? 1??? 2??? 3??? 4??? 5??? 6??? 7??? 8??? 9??? 10??? 11??? 重启tomcat??????? 新添加架包一定要重启tomcat??? 查看效果??? smart中文分词效果2、配置IK Analyzer中文分词器先下载 IK Analyzer中文分词器架包及相关配置文件。听说I分词器不支持**solr 6、7搭建成的**solrcloud,待验证。这里写图片描述里面包括IK Analyzer 2个架包:ik-analyzer-solr5-5.x.jar、solr-analyzer-ik-5.1.0.jarIK配置文件 IKAnalyzer.cfg.xml、ext.dic、stopword.dicIKAnalyzer.cfg.xml<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd"> ?<properties> ???? <comment>IK Analyzer 扩展配置</comment>??? <!--用户可以在这里配置自己的扩展字典 -->??? <entry key="ext_dict">ext.dic;</entry> ??? <!--用户可以在这里配置自己的扩展停止词字典-->??? <entry key="ext_stopwords">stopword.dic;</entry> </properties>??? 1??? 2??? 3??? 4??? 5??? 6??? 7??? 8??? 9??? 10??? 11准备IK中文分词器环境??? 把IK中文分词器架包复制到solr项目的WEB-INF/lib目录下??? 把IK分词器相关配置文件复制到solr项目WEB-INF/classes/ 目录下??? 这里写图片描述配置 fieldType找到solrhome/${collection}/conf/managed-schema在solr scheam文件中里添加 IK fieldType。<schema>? <!-- IK分词 -->? <fieldType name="text_ik" class="solr.TextField">??? <analyzer type="index">????? <tokenizer class="org.apache.lucene.analysis.ik.IKTokenizerFactory" useSmart="false"/>??? </analyzer>??? <analyzer type="query">????? <tokenizer class="org.apache.lucene.analysis.ik.IKTokenizerFactory" useSmart="false"/>??? </analyzer>? </fieldType></schema>??? 1??? 2??? 3??? 4??? 5??? 6??? 7??? 8??? 9??? 10??? 11??? 说明:当 useSmart=”false”,分词粒度较小,分词后个数多;当 useSmart=”true”,分词粒度大,分词后个数据少。效果分词的效果比官方提供的smartcn中文分词要好,去掉了标点符号,去掉了 的 等词义不重要的字。这里写图片描述3、拼音分词器先下载 IK拼音分词器架包:pinyin4j-2.5.0.jar、pinyinAnalyzer4.3.1.jar把相关架包复制到solr项目的WEB-INF/lib目录下配置fieldType找到solrhome/${collection}/conf/managed-schema在solr scheam文件中里添加 IK fieldType<schema>?<!-- IK 拼音分词 -->?<fieldType name="text_pinyin" class="solr.TextField" positionIncrementGap="0">??? <analyzer type="index">??????? <tokenizer class="org.apache.lucene.analysis.ik.IKTokenizerFactory"/>??????? <filter class="com.shentong.search.analyzers.PinyinTransformTokenFilterFactory" minTermLenght="2" />??????? <filter class="com.shentong.search.analyzers.PinyinNGramTokenFilterFactory" minGram="1" maxGram="20" />??? </analyzer>??? <analyzer type="query">??????? <tokenizer class="org.apache.lucene.analysis.ik.IKTokenizerFactory"/>??????? <filter class="com.shentong.search.analyzers.PinyinTransformTokenFilterFactory" minTermLenght="2" />??????? <filter class="com.shentong.search.analyzers.PinyinNGramTokenFilterFactory" minGram="1" maxGram="20" />??? </analyzer>?</fieldType></schema>??? 1??? 2??? 3??? 4??? 5??? 6??? 7??? 8??? 9??? 10??? 11??? 12??? 13??? 14??? 15效果这里写图片描述 --------------------- ?作者:写代码的蓝胖子 ?来源:CSDN ?原文:https://blog.csdn.net/huangliuyu00/article/details/79491513 ?版权声明:本文为博主原创文章,转载请附上博文链接!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读