搭建solr8
这里记录linux上的安装过程
一、下载安装包
https://lucene.apache.org/solr/downloads.html
二、解压安装
这里我放倒了/usr/local/solr目录下
解压命令: tar -zxvf solr-xxx.tgz
这个时候其实solr就已经可以启动了。执行一下命令。
/usr/local/solr/solr-8.1.1/bin solr start
但是如果是用root用户启动给出一个提示,并终止运行,需要加上一个修饰
/usr/local/solr/solr-8.1.1/bin solr start -force
这样就可以访问了。
http://ip+:8983/solr
接下来配置实例(solrcore)
cd /usr/local/solr/solr-8.1.1/server/solr
这里需要创一个实例的文件夹,我创建的是book。
创建好了需要干一件惊天动地的大事儿了copy,洋气吧~~~~
现在进到configsets文件夹下 cd /usr/local/solr/solr-8.1.1/server/solr/configsets 要复制的部分就是_default下的conf目录
cp -r /usr/local/solr/solr-8.1.1/server/solr/configsets/_default/conf/ /usr/local/solr/solr-8.1.1/server/solr/sysuser
然后需要把安装目下的dist目录中的solr-dataimporthandler-extras-xxx.jar、solr-dataimporthandler-8.1.1.jar复制到 /usr/local/solr/solr-8.1.1/server/solr-webapp/webapp/WEB-INF/lib 路径下
此外因为要连接到数据还要一个mysql的驱动包mysql-connector-java-8.0.18.jar。顺便把中文分词器也扔进去 ik-analyzer-8.3.0.jar。这要差不多需要的依赖就配好了,接下来就是配置文件了。
现在回到刚刚创建的实例的conf目录下 cd /usr/local/solr/solr-8.1.1/server/solr/sysuser/conf
在solrconfig.xml中添加一下节点,注意一定与其他的类似节点同级 可以直接搜索/select,在该节点之上添加
vi solrconfig.xml
<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
<lst name="defaults">
<str name="config">data-config.xml</str>
</lst>
</requestHandler>
这里配置中配置了一个data-config.xml的配置文件,他是数据库的配置文件,默认是没有需要自己创建
touch data-config.xml
编辑该文件 vi data-config.xml
添加以下内容
<?xml version="1.0" encoding="UTF-8" ?>
<dataConfig>
<dataSource type="JdbcDataSource"
driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://127.0.0.1:3306/xuan?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull"
user="root"
password="lhfadmin"/>
<document>
<entity name="book" pk="id" transformer="DateFormatTransformer" query="SELECT id,name,jianjie FROM book">
<field name="userid" type="text_ik" indexed="true" stored="true"/>
<field name="username" type="text_ik" indexed="true" stored="true"/>
<field name="realName" type="text_ik" indexed="true" stored="true"/>
<field name="phone" type="text_ik" indexed="true" stored="true"/>
</entity>
</document>
</dataConfig>
配置中文分词器,jar已经上边导入了,直接配置配置文件就好了
vi managed-schema
在最后便添加:
<fieldType name="text_ik" class="solr.TextField">
<analyzer type="index">
<tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="false" conf="ik.conf"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="true" conf="ik.conf"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
</fieldType>
<!-- 这是IK配置域,在这里不重要-->
<field name="title_ik" type="text_ik" indexed="true" stored="true"/>
<field name="content_ik" type="text_ik" indexed="true" stored="true" multiValued="true"/> <!--这是配置从数据库拿出来的数据配置域 -->
<field name="userid" type="text_ik" indexed="true" stored="true"/>
<field name="username" type="text_ik" indexed="true" stored="true"/>
<field name="realName" type="text_ik" indexed="true" stored="true"/>
<field name="phone" type="text_ik" indexed="true" stored="true"/>
这样就ok了,重启solr
/usr/local/solr/solr-8.1.1/bin/solr restart -force
如果这个位置没有刚才的实例,手动添加进去即可
点击上边的add core,
框红框的地方名字是一样的,和文件夹名字相同。剩下的没有改变就默认就好了。schema.xml和managed-schema可以理解成是一个玩意,不用理会。
添加后实例后就需要导入数据库的数据了
这个时候会发现并没有导入进去,看下日志发现
然后在conf目录下添加 dataimport.properties文件即可
然后重启
重新导入
这时查询可以看到导入的数据
搭建solr8的更多相关文章
- solr8.0的简单搭建(一)
第一步,下载solr 进入solr官网进行下载:http://lucene.apache.org/solr/ 第二步: 将解压的solr放到自己指定的文件夹 第三步: 由于solr有自带服务器,所以可 ...
- solr8.2 环境搭建 配置中文分词器 ik-analyzer-solr8 详细步骤
一.下载安装Apache Solr 8.2.0 下载地址:http://lucene.apache.org/solr/downloads.html 因为是部署部署在windows系统上,所以下载zip ...
- Solr集群环境搭建
一.准备工作 首先保证已经安装JDK工具包: [root@localhost opt]# java -version java version "1.8.0_144" Java(T ...
- Solr单机环境搭建及部署
一.定义 官网的定义: Solr是基于Lucene构建的流行,快速,开放源代码的企业搜索平台.它具有高度的可靠性,可伸缩性和容错能力,可提供分布式索引,复制和负载平衡查询,自动故障转移和恢复,集中式配 ...
- Online Judge(OJ)搭建(第一版)
搭建 OJ 需要的知识(重要性排序): Java SE(Basic Knowledge, String, FileWriter, JavaCompiler, URLClassLoader, Secur ...
- Angular2入门系列教程1-使用Angular-cli搭建Angular2开发环境
一直在学Angular2,百忙之中抽点时间来写个简单的教程. 2016年是前端飞速发展的一年,前端越来越形成了(web component)组件化的编程模式:以前Jquery通吃一切的田园时代一去不复 ...
- 总结:Mac前端开发环境的搭建(配置)
新年新气象,在2016年的第一天,我入手了人生中第一台自己的电脑(大一时好友赠送的电脑在一次无意中烧坏了主板,此后便不断借用别人的或者网站的).macbook air,身上已无分文...接下来半年的房 ...
- Angular企业级开发(5)-项目框架搭建
1.AngularJS Seed项目目录结构 AngularJS官方网站提供了一个angular-phonecat项目,另外一个就是Angular-Seed项目.所以大多数团队会基于Angular-S ...
- 【分享】标准springMVC+mybatis项目maven搭建最精简教程
文章由来:公司有个实习同学需要做毕业设计,不会搭建环境,我就代劳了,顺便分享给刚入门的小伙伴,我是自学的JAVA,所以我懂的.... (大图直接观看显示很模糊,请在图片上点击右键然后在新窗口打开看) ...
随机推荐
- 洛谷 P2658 汽车拉力比赛
题目传送门 解题思路: 二分答案,然后bfs验证,如果从一个路标可以达到其它所有路标,则答案可行.知道找到最佳答案. AC代码: #include<iostream> #include&l ...
- org.springframework.dao.CannotAcquireLockException异常分析
错误信息如下: 2017-09-27 16:27:16.153 - [com.ldyun.base.service.impl.BaseRetailOrderServiceImpl] - 新增零售商品订 ...
- Unity获取游戏对象详解
我觉得Unity里面的Transform 和 GameObject就像两个双胞胎兄弟一样,这俩哥们很要好,我能直接找到你,你也能直接找到我.我看很多人喜欢在类里面去保存GameObject对象.解决G ...
- jenkins job 杀进程不成功解决办法
jenkins_job #!/bin/bash set -ex #打印执行过程 BUILD_ID=DONTKILLME #防止自杀 ssh dataexa@192.168.1.65 > /dev ...
- Cpp:"->"和"."的区别
environments:gcc version 8.1.0 (x86_64-posix-seh-rev0, Built by MinGW-W64 project) class data{ publi ...
- 解决 springweb Filter 读取request body miss body
package com.lb.demo.listener; import java.io.BufferedReader; import java.io.ByteArrayInputStream; im ...
- 0CTF-2016-piapiapia-PHP反序列化长度变化尾部字符串逃逸
0X00 扫描一下网站目录,得到网站源码,这里说下工具使用的是dirmap,亲测御剑不好用... 0x01 审计源码: index.php <?php require_once('class.p ...
- Thread--停止线程
参考:http://blog.sina.com.cn/s/blog_6ca570ed01016mti.html Thread.interrupt()方法不会中断一个正在运行的线程.它的作用是,在线程受 ...
- springboot和shiro的整合
直接贴上代码 1. 所需要的jar包 <dependency> <groupId>org.apache.shiro</groupId> <artifactId ...
- php的date()函数判断今天是星期几
d 月份中的第几天,有前导零的 2 位数字 01 到 31 D 星期中的第几天,文本表示,3 个字母 Mon 到 Sun j 月份中的第几天,没有前导零 1 到 31 l ("L&q ...