solr安装笔记与定时器任务
一:solr启动
目前solr最高版本为5.5.0版本,很多solr安装都是说将server文件copy到tomcat中,但是solr版本自带有jetty的启动方式
首先下载solr-5.5.0版本,解压后文件目录:
打开readme.txt ,发现有之下的几句话:
告诉你使用命令行启动的方式,本机为windows系统,所以打开cmd(shift+邮件--->在此处打开命令端口),进入bin目录,输入命令solr start
这样就算是启动成功了,可以直接在浏览器中输入http://localhost:8983 查看solr管理后台
二:创建solr core
1.首先进入/server/solr 文件夹,创建一个文件夹,名称为你所建core的名称, 这里我的core取名为mark
2.在mark目录下创建一个core.properties文件,里面写上:name=mark
3.首先进入/server/solr/configsets/basic_configs,将conf目录copy到刚才的mark目录下
4.将managed-schema文件修改为schema.xml 文件,这是solr比较核心的文件,用来定义索引
先看看这个schema.xml文件
第一行: ,将这个name改为我们自己的core名称:即mark
第113行定义了id,这个可以任意修改
167行定义了唯一主键,这个主键可以是任意的类型和字段,但必须是唯一非空的,当有重复的时候,solr将会替换掉之前所创建的索引。
这里是一个默认的对文本的处理,其中配置的分词器,过滤器等。
配置上这些其实就算成功创建了一个core,可以打开后台,可以看到新添加了要给core selector.
三:配置solr 数据库导入
solr有插件可以直接从数据库中导入数据,并创建索引。主要使用solr-dataimporthandler-5.5.0.jar
首先在solrhome/dist 中找到 solr-dataimporthandler-5.5.0.jar,solr-dataimporthandler-extras-5.5.0.jar,solr-core-5.5.0.jar三个包,一并copy到solrhomt/server/lib中
在网上下载一个mysql-connector-java.jar copy到solrhomt/server/lib中
在我们自己的core mark中,找到solrconfig.xml文件
在这个文件的根节点下添加
<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler"> <lst name="defaults"> <str name="config">data-config.xml</str> </lst> </requestHandler>
这是给solr服务器添加一个severlet,用来接收dataimport请求。其中配置文件data-config.xml与solrconfig.xml放在同一个目录下
创建一个文件data-config.xml
配置:
<dataConfig> <dataSource type="JdbcDataSource" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/morequ" user="root" password="root"/><document><entity name="mark" query="select id,value,type,datam_id,create_time from mark where enable =0 " deltaImportQuery="SELECT id,value,type,datam_id,create_time from mark where enable =0 and id='${dih.delta.id}' " deltaQuery="SELECT id from mark where enable =0 and create_time > '${dih.last_index_time}'" ><field column="id" name="id" /><field column="value" name="value" /><field column="type" name="type" /><field column="datam_id" name="datam_id" /><field column="create_time" name="create_time"/></entity></document> </dataConfig>
使用dataimport需要一个配置properties,存放一些变量,新建dataimport.properties 文件放在与data-config.xml文件同目录下
配置好重启solr
在后台,我们看到了一个新的菜单:
command可以选择是全量更新,还是增量更新。
四:配置增量更新定时任务
当有了数据导入后,并不能实现我们想要的功能,则需要一个定时任务的东西去定时导入增量数据:
可以下载apache-solr-dataimportscheduler-1.0.jar 包,
1.将apache-solr-dataimportscheduler-1.0.jar 放在solrhome/server/solr-webapp/WEB-INF/lib里
注意,此包有一个问题,加载配置文件找不到
原因在这个文件中,
这里给他一个指定的文件路径:
2. 放好jar包之后,需要配置配置文件
下载jar的时候,如果下的是with source版本,则里面自带一个dataimport.properties 配置文件,
注意,此时在solrhome/server/solr 中(注意,这里不是jar包的存放位置webapp),创建一个conf文件夹,将dataimport.properties放在conf中
如果没有的这里贴出来配置文件:
################################################# # # # dataimport scheduler properties # # # ################################################# # to sync or not to sync # 1 - active; anything else - inactive syncEnabled=1# which cores to schedule # in a multi-core environment you can decide which cores you want syncronized # leave empty or comment it out if using single-core deployment syncCores=mark# solr server name or IP address # [defaults to localhost if empty] server=localhost# solr server port # [defaults to 80 if empty] port=8983# application name/context # [defaults to current ServletContextListener's context (app) name] webapp=solr# URL params [mandatory] # remainder of URL # 增量更新的请求参数 params=/dataimport?command=delta-import&clean=false&commit=true# schedule interval # number of minutes between two runs # [defaults to 30 if empty] # 这里配置的是2min一次 interval=2# 重做索引的时间间隔,单位分钟,默认7200,即5天; # 为空,为0,或者注释掉:表示永不重做索引 reBuildIndexInterval=0# 重做索引的参数 reBuildIndexParams=/dataimport?command=full-import&clean=true&commit=true# 重做索引时间间隔的计时开始时间,第一次真正执行的时间=reBuildIndexBeginTime+reBuildIndexInterval*60*1000; # 两种格式:2012-04-11 03:10:00 或者 03:10:00,后一种会自动补全日期部分为服务启动时的日期 reBuildIndexBeginTime=03:10:00
3.打开solrhome\server\solr-webapp\webapp\WEB-INF\web.xml
添加一个listener:
<listener> <listener-class>org.apache.solr.handler.dataimport.scheduler.ApplicationListener</listener-class> </listener>
4.重新启动solr,定时器任务则生效。
参考资料:
http://www.cnblogs.com/atyou/archive/2013/04/21/3033675.html
转载于:https://www.cnblogs.com/lic309/p/5254205.html
solr安装笔记与定时器任务相关推荐
- solr安装-tomcat+solrCloud构建稳健solr集群
solrCloud的搭建可以有两种方式:使用solr内嵌的jetty来搭建:使用外部web容器tomcat来搭建.对于使用jett来搭建参考solr官方的手册照着做肯定ok,下面我主要讲的是如何使用t ...
- laravel安装笔记 (转)
一.安装composer 安装之前将\php\php.ini文件中的php_openssl.dll扩展库开启,否则composer在安装过程中会出现错误提示. (我在安装过程中发现apache目录下的 ...
- 前端开发学习笔记 - 1. Node.JS安装笔记
Node.JS安装笔记 Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. Node.js uses an ...
- Oracle安装笔记
Oracle安装笔记 出现错误后不要慌,最主要的是看log文件的提示,其中比较简单的文件是install目录下的make.log 错误一: client_shared For example: /us ...
- convirt2.5在虚拟机上安装笔记
<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255) ...
- SVN的安装笔记和要注意的问题
SVN的安装笔记和要注意的问题 之前装的SVN 1.3.2,按网上说的教程,一配置就可以用了,但这次换了1.4.2的最新版本, 只是设置了server.conf和passwd后,依然在导入项目时,说验 ...
- pycharm不同py文件共享参数_PyCharm安装笔记
1. 介绍 1.1 介绍 今天福哥带着大家学习如何安装非常好用的Python编辑器,也就是jetbrains全家桶的PyCharm编辑器. PyCharm是jetbrans开发的一款专门用来编写Pyt ...
- ubuntu18.04 Qt Creator 安装+ROS Qt Creator Plug-in 插件安装笔记
ubuntu18.04 Qt Creator 安装+ROS Qt Creator Plug-in 插件安装笔记: 一.Qt Creator 5.10安装 官网下载地址: http://download ...
- Windows10+Ubuntu 18.04.2+ROS 安装笔记(SSD单硬盘)下
Windows10+Ubuntu 18.04.2+ROS 安装笔记(SSD单硬盘)下 一.前言 二.化繁为简 二.补充说明 三.测试ROS 是否安装成功 一.前言 最近需要学习ROS和python,于 ...
最新文章
- openfoam linux教程,科学网—Windows10 安装OpenFOAM 教程 - 陈浩的博文
- [备忘]macOS和Windows下很赞的软件
- Chrome 开发者工具 版本 65 新引入的 Overrides
- 求ax bx c 0的根c语言,关于求方程ax2+bx+c=0根的问题
- Web黑客工具箱之LiveHttpHeaders
- 实现点击页面其他地方,隐藏div(vue)
- 重庆大学李婷婷计算机学院,北京大学青年研究中心赴我校考察调研
- 特斯拉和SolarCity推出太阳能屋顶瓦片
- php 美化注册界面,美化,从登录界面背景开始
- 分位数回归--基于R
- 计算机软考中级能评职称吗,软考中级是中级职称么?考此证后可以办理落户么?...
- matlab怎么产生一个随机数,matlab怎么产生随机数
- 刷脸支付在流量金贵时代把控千万用户
- linux shell bash -c $IFS ${IFS}
- Python面向对象编程——类的学习
- [Web安全]信息收集
- Android 2.3的StrictMode使用
- 【方法】Latex多行公式及编号
- vscode的调试配置
- 深度学习服务器配置过程
热门文章
- DCMTK:转换DICOM彩色图像调色板的颜色
- VTK:网格之SubdivisionDemo
- VTK:图片之Interpolation
- OpenCV iOS-视频处理
- Qt Creator使用Bazaar集市
- C++SEG TREE线段树的实现算法(附完整源码)
- QT的QMultiSampleAntiAliasing类的使用
- C语言和C++语言关系
- android4 设置栈大小,【技术分享】Android内核漏洞利用技术实战:环境搭建栈溢出实战...
- 基于注解的Spring MVC整合Hibernate(所需jar包,spring和Hibernate整合配置,springMVC配置,重定向,批量删除)