1 加入相关jar包

将2个相关jar包复制到/opt/solr-7.7.1/server/solr-webapp/webapp/WEB-INF/lib文件夹下

jar包名称
solr-dataimporthandler-extras-7.7.1.jar
solr-dataimporthandler-7.7.1.jar

jar包所在位置/opt/solr-7.7.1/dist

并将连接oracle的jar包也复制到该目录下

2 配置Core下的solrconfig.xml文件

/opt/solr-7.7.1/server/solr/article_core/conf/solrconfig.xml

加入到<config></config>标签内

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

3 在conf中创建data-config.xml

/opt/solr-7.7.1/server/solr/article_core/conf中

<?xml version="1.0" encoding="UTF-8" ?>
<dataConfig>
<dataSource type="JdbcDataSource"
driver="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@ip地址:1521:ORCL"
user="连接数据库用户名"
password="连接数据库密码"/> <document> <entity name="bookInfo" query="SELECT
BOOK_ID,
TITLE_CN,
TITLE_EN,
KEYWORDS_CN,
KEYWORDS_EN
from
EL.T_BOOK_INFO">
<field column="BOOK_ID" name="id"/>
<field column="TITLE_CN" name="titleCn"/>
<field column="TITLE_EN" name="titleEN"/>
<field column="KEYWORDS_CN" name="keywordsCn"/>
<field column="KEYWORDS_EN" name="keywordsEn"/> </entity> </document> </dataConfig>

4在schema.xml中添加域

<field name="id" type="string" indexed="true" stored="true" required="true" multiValued="false" /> 

<field name="titleCn" type="text_ik" indexed="true" stored="true" required="true" multiValued="false" /> 

<field name="titleEn" type="text_ik" indexed="true" stored="true" required="true" multiValued="false" /> 

<field name="keywordsCn" type="text_ik" indexed="true" stored="true" required="true" multiValued="false" /> 

<field name="keywordsEn" type="text_ik" indexed="true" stored="true" required="true" multiValued="false" />

其中field中的name值与data-config.xml中的name值一样

5重启solr服务

bin/solr restart

执行添加 10万条数据大概用时1m30s

Solr通过配DIH对数据库数据做索引的更多相关文章

  1. 【Solr】数据库数据导入索引库

    目录 分析框图 配置数据库与solrconfig.xml 回到顶部 分析框图 框图画的粗糙!勿喷啊!勿喷啊! 回到顶部 配置数据库与solrconfig.xml Dataimport插件 可以批量把数 ...

  2. 通过读取excel数据和mysql数据库数据做对比(二)-代码编写测试

    通过上一步,环境已搭建好了. 下面开始实战, 首先,编写链接mysql的函数conn_sql.py import pymysql def sql_conn(u,pwd,h,db): conn=pymy ...

  3. 使用 Solr 创建 Core 并导入数据库数据

    1. 输入 http://localhost:8080/solr/index.html 来到 Solr 的管理界面: 2. 点击左侧 Core Admin --> Add Core,然后输入自己 ...

  4. 通过读取excel数据和mysql数据库数据做对比(一)-win环境准备

    要想操作excel和mysql首先需要安装python,然后是安装excel和mysql插件: 第一步安装python: 直接百度搜索,下载安装就可以了. 第二步安装excel插件: 首先到这个htt ...

  5. 如何通过 Docker 部署 Logstash 同步 Mysql 数据库数据到 ElasticSearch

    在开发过程中,我们经常会遇到对业务数据进行模糊搜索的需求,例如电商网站对于商品的搜索,以及内容网站对于内容的关键字检索等等.对于这些高级的搜索功能,显然数据库的 Like 是不合适的,通常我们采用 E ...

  6. solr 7+tomcat 8 + mysql实现solr 7基本使用(安装、集成中文分词器、定时同步数据库数据以及项目集成)

    基本说明 Solr是一个开源项目,基于Lucene的搜索服务器,一般用于高级的搜索功能: solr还支持各种插件(如中文分词器等),便于做多样化功能的集成: 提供页面操作,查看日志和配置信息,功能全面 ...

  7. 在Linux环境下,将Solr部署到tomcat7中,导入Mysql数据库数据, 定时更新索引

    什么是solr solr是基于Lucene的全文搜索服务器,对Lucene进行了扩展优化. 准备工作 首先,去下载以下软件包: JDK8:jdk-8u60-linux-x64.tar.gz TOMCA ...

  8. solr 简单搭建 数据库数据同步(待续)

    原来在别的公司负责过文档检索模块的维护(意思就是不是俺开发的啦). 所以就略微接触和研究了下文档检索. 文档检索事实上是全文检索.是通过一种技术把N多文档进行一定规律的分割归类,然后创建易于搜索的索引 ...

  9. solr导入数据库数据-tinyint数据转boolean

    solr在导入mysql数据库数据时,遇到一个问题:数据类型为tinyint的数据对应不到solr中的数据类型,因此就需要将tinyint转一下. 修改schema.xml文件,如下: 1.添加boo ...

随机推荐

  1. Python入门小练习

    Python入门小练习 001 备份文件 Python入门小练习 002 批量下载网页链接中的图片 Python入门小练习 003 利用cookielib模拟登录获取账户信息

  2. 用apache commons-pool2建立thrift连接池

    Apache Thrift 是 Facebook 实现的一种高效的.支持多种编程语言的远程服务调用的框架.具体的介绍可以看Apache的官方网站:http://thrift.apache.org/ . ...

  3. struts2的@Result annotation 如何添加params,并且在页面取值

    http://www.bubuko.com/infodetail-2492575.html .............................................. 标签:lai  ...

  4. QlikView入门

    1.windows x64下载地址: http://d1cf4w4kkla6tb.cloudfront.net/qlikview/11.20/11718/_MSI/QlikViewDesktop_x6 ...

  5. javaScript面向对像

    1.创建对象 <script type="text/javascript"> function Flower(name,addre) { this.name=name; ...

  6. tomcat在idea中启动乱码

    server,localhost log,catalina log分别乱码 打开tomcat/conf/目录下修改logging.properties 找到"utf-8"行更改为 ...

  7. mongodb Gridfs操作

    GridFS 介绍 GridFS是MongoDB规范用于存储和检索大文件,如图片,音频文件,视频文件等.这是一种文件系统用来存储文件,但数据存储于MongoDB集合中.GridFS存储文件比其文档大小 ...

  8. Django中对单表的增删改查

    之前的简单预习,重点在后面 方式一: # create方法的返回值book_obj就是插入book表中的python葵花宝典这本书籍纪录对象   book_obj=Book.objects.creat ...

  9. CF1062D Fun with Integers

    思路: 找规律. 实现: #include <bits/stdc++.h> using namespace std; typedef long long ll; int main() { ...

  10. Django之admin的使用及源码分析

    一.admin组件使用 Django本身提供了基于 web 的管理工具.其管理工具是django.contrib的一部分,可在settings.py中的 INSTALLED_APPS 看到: INST ...