热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

solr-7.7.1+配置tomcat启动

高版本的sorl可以在linux下与windows下使用命令启动,也可以配置tomcat运行,至于那种比较好我也不清楚,没找到介绍.1.配置tomcat下运行solr7(1

 

高版本的sorl 可以在linux 下 与 windows下使用命令启动,也可以配置tomcat运行,至于那种比较好我也不清楚,没找到介绍.

1. 配置tomcat下运行solr7

(1) .把 solr-webapp下webapp底下所有文件部署到 tomcat 下webapps文件夹下

 

(2). 把solr-7-7.1 --> service ---> lib 底下的所有jar 放入 tomcat 项目部署位置的WEB-INF/lib下 ,

(3) .把 solr-7-7.1 --> service ---> resources 下底下所有文件部署到 tomcat 下webapps\solr\WEB-INF\classes文件夹下

在classes下修改log4j.xml文件,配置你的log文件存放位置,

 

(4) 配置 web.xml

注释一段代码,防止本地请求 403 问题

  <security-constraint>
    <web-resource-collection>
      <web-resource-name>Disable TRACEweb-resource-name>
      <url-pattern>/url-pattern>
      <http-method>TRACEhttp-method>
    web-resource-collection>
    <auth-constraint/>
  security-constraint>
  <security-constraint>
    <web-resource-collection>
      <web-resource-name>Enable everything but TRACEweb-resource-name>
      <url-pattern>/url-pattern>
      <http-method-omission>TRACEhttp-method-omission>
    web-resource-collection>
  security-constraint>

插入配置 solrhome 位置代码

<env-entry>  
        <env-entry-name>solr/homeenv-entry-name>  
        <env-entry-value>D:\ProgramFiles\BianCheng\apache-tomcat8.5-solr\solrhome(配置你自己的solrhome绝对位置)env-entry-value>  
        <env-entry-type>java.lang.Stringenv-entry-type>  
    env-entry> 

 (5) 将solr-7.7.1 下contrib 和 dist 文件夹 放入你设置的 solrhome文件夹下面

 

 (6) 创建第一个core, 现在网站已经是可以运行的了,但是第一个在网站上 创建 core 普遍是会报错的,(未知原因,我是找不到)可以使用命令行

把solr-7.7解压到某个位置,进入bin目录在这个位置启动 cmd, 使用命令  windows 下使用 solr.cmd start 

如果你启动报错也是不影响我们接下来操作,创建core   命令: solr.cmd create -c corename

它会把core 创建在解压目录下的server 下的 solr

 

 把创建好的 core 拷贝到你的solrhome 文件夹下面,如果想要改名称,修改core.properties 文件 和 文件夹名称.

(7) 导入数据库数据

创建文件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/数据库名?charactorEncoding=utf-8" user="用户名" password="密码" />
    <document>
        <entity name="表名" query="查询语句" pk="id">
            <field column="表字段名" name="对应solr字段名`" />
        entity>
    document>
dataConfig>

修改managed-schema

  
  
  <
fieldType name="text_ik" class="solr.TextField"> <analyzer class="org.wltea.analyzer.lucene.IKAnalyzer"/> fieldType> <field name="text_ik" type="text_ik" indexed="true" stored="true" multiValued="false" />

<field name="hotelName" type="text_ik" indexed="true" stored="true"/>

修改 solrconfig.xml文件,把 lib标签引入jar 设置为绝对路径

 <lib dir="D:\ProgramFiles\BianCheng\apache-tomcat8.5-solr\solrhome\contrib\extraction\lib" regex=".*\.jar" />
  <lib dir="D:\ProgramFiles\BianCheng\apache-tomcat8.5-solr\solrhome\dist\" regex="solr-cell-\d.*\.jar" />

  <lib dir="D:\ProgramFiles\BianCheng\apache-tomcat8.5-solr\solrhome\contrib\clustering\lib\" regex=".*\.jar" />
  <lib dir="D:\ProgramFiles\BianCheng\apache-tomcat8.5-solr\solrhome\dist\" regex="solr-clustering-\d.*\.jar" />

  <lib dir="D:\ProgramFiles\BianCheng\apache-tomcat8.5-solr\solrhome\contrib\langid\lib\" regex=".*\.jar" />
  <lib dir="D:\ProgramFiles\BianCheng\apache-tomcat8.5-solr\solrhome\dist\" regex="solr-langid-\d.*\.jar" />

  <lib dir="D:\ProgramFiles\BianCheng\apache-tomcat8.5-solr\solrhome\contrib\velocity\lib" regex=".*\.jar" />
  <lib dir="D:\ProgramFiles\BianCheng\apache-tomcat8.5-solr\solrhome\dist\" regex="solr-velocity-\d.*\.jar" />

在最后,config 标签前面添加

   
    <admin>  
      <defaultQuery>*:*defaultQuery>  
    admin>  
    <requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
        <lst name="defaults">  
    <str name="config">data-config.xml(配置的数据连接文件)str>  
  lst>  
    requestHandler>
 2.配置增量

1. 在solrhome下创建 conf 文件夹放入  dataimport.properties

################################################# 
#                                               # 
#       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=mycore
#  solr server name or IP address 
#  [defaults to localhost if empty] 
server=localhost
#  solr server port 
#  [defaults to 80 if empty] 
port=80
#  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&optimize=false&wt=json&indent=true&entity=info&verbose=false&debug=false&name=dataimport
#  schedule interval 
#  number of minutes between two runs 
#  [defaults to 30 if empty]  分钟 默认30分钟
interval=1
#  重做索引的时间间隔,单位分钟,默认7200,即1天;  
#  为空,为0,或者注释掉:表示永不重做索引 
reBuildIndexInterval=7200
#  重做索引的参数 
reBuildIndexParams=/dataimport?command=full-import&clean=true&commit=true&optimize=true&wt=json&indent=true&entity=info&verbose=false&debug=false
#  重做索引时间间隔的计时开始时间,第一次真正执行的时间=reBuildIndexBeginTime+reBuildIndexInterval*60*1000; 
#  两种格式:2012-04-11 03:10:00 或者  03:10:00,后一种会自动补全日期部分为服务启动时的日期 
reBuildIndexBeginTime=2012-04-11 09:00:00

在WEB-INF添加监听器

<listener> 

    <listener-class>org.apache.solr.handler.dataimport.scheduler.ApplicationListenerlistener-class> 

listener>

 


推荐阅读
  • 包含phppdoerrorcode的词条 ... [详细]
  • 在JavaWeb开发中,文件上传是一个常见的需求。无论是通过表单还是其他方式上传文件,都必须使用POST请求。前端部分通常采用HTML表单来实现文件选择和提交功能。后端则利用Apache Commons FileUpload库来处理上传的文件,该库提供了强大的文件解析和存储能力,能够高效地处理各种文件类型。此外,为了提高系统的安全性和稳定性,还需要对上传文件的大小、格式等进行严格的校验和限制。 ... [详细]
  • 本文介绍了如何利用Struts1框架构建一个简易的四则运算计算器。通过采用DispatchAction来处理不同类型的计算请求,并使用动态Form来优化开发流程,确保代码的简洁性和可维护性。同时,系统提供了用户友好的错误提示,以增强用户体验。 ... [详细]
  • 本文介绍了如何查看PHP网站及其源码的方法,包括环境搭建、本地测试、源码查看和在线查找等步骤。 ... [详细]
  • 本文介绍了如何使用Python爬取妙笔阁小说网仙侠系列中所有小说的信息,并将其保存为TXT和CSV格式。主要内容包括如何构造请求头以避免被网站封禁,以及如何利用XPath解析HTML并提取所需信息。 ... [详细]
  • 2020年9月15日,Oracle正式发布了最新的JDK 15版本。本次更新带来了许多新特性,包括隐藏类、EdDSA签名算法、模式匹配、记录类、封闭类和文本块等。 ... [详细]
  • 我有一个从C项目编译的.o文件,该文件引用了名为init_static_pool ... [详细]
  • 本文详细介绍了如何在PHP中记录和管理行为日志,包括ThinkPHP框架中的日志记录方法、日志的用途、实现原理以及相关配置。 ... [详细]
  • 本文介绍了如何使用Flume从Linux文件系统收集日志并存储到HDFS,然后通过MapReduce清洗数据,使用Hive进行数据分析,并最终通过Sqoop将结果导出到MySQL数据库。 ... [详细]
  • Tornado框架中模块与静态文件的应用
    本文详细介绍了Tornado框架中模块和静态文件的使用方法。首先明确模块与模板的区别,然后通过具体的代码示例展示如何在HTML文档中使用模块,并配置模块的路由。最后,提供了模块类中参数获取的示例。 ... [详细]
  • 解决Parallels Desktop错误15265的方法
    本文详细介绍了在使用Parallels Desktop时遇到错误15265的多种解决方案,包括检查网络连接、关闭代理服务器和修改主机文件等步骤。 ... [详细]
  • DVWA学习笔记系列:深入理解CSRF攻击机制
    DVWA学习笔记系列:深入理解CSRF攻击机制 ... [详细]
  • 基于Net Core 3.0与Web API的前后端分离开发:Vue.js在前端的应用
    本文介绍了如何使用Net Core 3.0和Web API进行前后端分离开发,并重点探讨了Vue.js在前端的应用。后端采用MySQL数据库和EF Core框架进行数据操作,开发环境为Windows 10和Visual Studio 2019,MySQL服务器版本为8.0.16。文章详细描述了API项目的创建过程、启动步骤以及必要的插件安装,为开发者提供了一套完整的开发指南。 ... [详细]
  • 在Linux系统中,网络配置是至关重要的任务之一。本文详细解析了Firewalld和Netfilter机制,并探讨了iptables的应用。通过使用`ip addr show`命令来查看网卡IP地址(需要安装`iproute`包),当网卡未分配IP地址或处于关闭状态时,可以通过`ip link set`命令进行配置和激活。此外,文章还介绍了如何利用Firewalld和iptables实现网络流量控制和安全策略管理,为系统管理员提供了实用的操作指南。 ... [详细]
  • 使用Maven JAR插件将单个或多个文件及其依赖项合并为一个可引用的JAR包
    本文介绍了如何利用Maven中的maven-assembly-plugin插件将单个或多个Java文件及其依赖项打包成一个可引用的JAR文件。首先,需要创建一个新的Maven项目,并将待打包的Java文件复制到该项目中。通过配置maven-assembly-plugin,可以实现将所有文件及其依赖项合并为一个独立的JAR包,方便在其他项目中引用和使用。此外,该方法还支持自定义装配描述符,以满足不同场景下的需求。 ... [详细]
author-avatar
Cherish雪蕊诗_425
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有