solr8.0 从数据库导入数据(三)

第一步:导入相关包:

在创建的核心目录下新建lib文件夹(如果有,无需建立),从Solr源码包的dist文件夹中导入两个solr-dataimporthandler包,以及一个mysql驱动包。

第二步:编辑下边路径中的solrconfig文件(mycore1为自己所创建的核心文件夹):

在文件末尾添加以下内容

<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进行如下编辑(没有则创建):

<?xml version="1.0" encoding="UTF-8" ?>

<dataConfig>
    <!-- 数据库信息 -->
    <dataSource type="JdbcDataSource"
        driver="com.mysql.jdbc.Driver"
        url="jdbc:mysql://localhost:3306/college_service"
        user="root" password="mysql"/>
    <document>
        <!-- document实体 -->
        <entity name="news" query="SELECT * FROM news">
            <!-- 数据库字段映射solr字段 -->
            <field column="news_id" name="id"/>
            <field column="news_authorid" name="newsAuthorid"/>
            <field column="news_title" name="newsTitle"/>
            <field column="news_cover" name="newsCover"/>
            <field column="news_time" name="newsTime"/>
            <field column="news_browse" name="newsBrowse"/>
            <field column="news_schoolid" name="newsSchoolid"/>
            <field column="news_categoryid" name="newsCategoryid"/>
            <field column="news_abstract" name="newsAbstract"/>
            <field column="news_content" name="newsContent"/>

        </entity>
    </document>
</dataConfig>

然后在当前路径的managed-schema文件中加入相应的类型映射

<!--自定义的域-->
    <field name="newsAuthorid" type="string" indexed="true" stored="true"/>
    <field name="newsTitle" type="string" indexed="true" stored="true" />
    <field name="newsCover" type="string" indexed="false" stored="true"  />
    <field name="newsTime" type="pdate" indexed="false" stored="true"  />
    <field name="newsBrowse" type="pint" indexed="false" stored="true" />
    <field name="newsSchoolid" type="string" indexed="false" stored="true"/>
    <field name="newsCategoryid" type="string" indexed="false" stored="true"  />
    <field name="newsAbstract" type="text_ik" indexed="true" stored="true" />
    <field name="newsContent" type="text_general" indexed="false" stored="true"  />

登陆http://localhost:8983/solr/,进入以下模块,执行excute就导入数据了,没反应过来可以进行refresh status

原文地址:https://www.cnblogs.com/ITDreamer/p/10662016.html

时间: 2024-08-06 01:30:56

solr8.0 从数据库导入数据(三)的相关文章

SQL*Loader 从文本文件向数据库导入数据

之前我的一遍 blog 写了怎样使用 Toad 这个工具从 excel 或者 csv 文件向数据库导入数据. 其实 Oracle 自己提供了这样一个工具, 叫做 SQL*Loader. 这个工具使用起来没有那么直接, 也比较容易出错, 但是它非常适合导入大数据量的文本. 执行效率非常高, 号称一小时能导入100 G (听说). 这里给出一个简单的例子, 怎么去使用它. 比方说, 有个客户想要从他之前使用的 ERP 软件里面, 把数据导入到 Oracle 的 EBS. 当然他不可能直接表对表的复制

向orale数据库导入数据的时候报 ORA-01658

问题描述:在向orale数据库导入数据的时候报 ORA-01658: 无法为表空间 XXX中的段创建 INITIAL 区错误. 这是由于表空间对应的数据文件中数据量超过Oracle在创建表空间的时候数据文件初始化大小值,当数据量达到这个值,再向数据库中导入数据就会报错. 解决办法:解决办法就是扩展表空间,可以选择将表容量扩大,比如扩展到5000MB,或者当表空间不够时每次自动增加一定的容量,如每次自增200M. -- 查询当前数据库中表空间是否为自动扩展 select tablespace_na

SQL从其他服务器数据库导入数据到本地数据库中

EXEC sp_dropserver 'ITSV2', 'droplogins' exec sp_addlinkedserver 'ITSV2' , '' , 'SQLOLEDB' , '168.9.123.123' exec sp_addlinkedsrvlogin 'ITSV2' , 'false' , null , 'sa' , 'sa' drop table test2; select top 12 * into test2 from ITSV2.InfoDB.dbo.city sele

如何实现MindManager数据库导入数据连接

思维导图有时候也是需要数据来进行补充支持,对于MindManager思维导图来说,与数据库的链接使得功能更为强大,那么在MindManager数据库中又是如何导入数据呢. 一个数据库连接到数据源(Mindjet的CSV文件的数据库或文件夹).您可以浏览数据源和你的导图来进行内容的添加. 添加数据库连接后,在打开的窗口中,选择连接类型,你可以连接到下面的数据库类型: 微软Access 微软Excel 微软SQL服务器 MySQL服务器 逗号分隔值(CSV文件的文件夹中的每个文件作为一个表) 而且您

批量往数据库导入数据遇到的问题总结

项目开发中,有个功能需要往数据库批量插入数据,刚开始没考虑那么多,就一条一条数据循环插入数据库,数据量少的时候,效率还可以,但是当数据量达到上千甚至几百时,这个方法效率就不行了,得等段时间才全部插入成功,用户体验度非常不好,果断pass掉该方法. 接着换令一种方法,那就是拼接insert字符串,即"Insert into TableName Values(' ',' ',' '),(' ',' ',' ');",刚开始还比较happy,插入速度很快,效率很高,可是当数据过千后,问题出现

在C#应用程序中,利用表值参数过滤重复,批量向数据库导入数据,并且返回重复数据

在很多情况下,应用程序都需要实现excel数据导入功能,数据如果只有几十条,或上百条,甚至上千条,速度还好. 但是不仅如此,如果客户提供给你的excel本身存在着重复数据,或是excel中的某些数据已经在数据库存在,那这时,在向数据库插入数据前你还得判重,如果不存在才进行导入 通常,我们第一步就会通过上传的方式把excel中的数据读到内存,然后通过循环的方式得出一条一条数据,接着对于每条数据用关键字段去往数据库中进行一次查重,若存在则不做事情,若 不存在则向数据库中插入一条数据.这样一来,我们每

【转】Solr从数据库导入数据(DIH)

本文转自:http://blog.csdn.net/xiaoyu714543065/article/details/11849115 一. 数据导入(DataImportHandler-DIH) DIH 是solr 提供的一种针对数据库.xml/HTTP.富文本对象导入到solr 索引库的工具包.这里只针对数据库做介绍. A.准备以下jar包 apache-solr-dataimporthandler-4.0.0.jar apache-solr-dataimporthandler-extras-

MYSQL数据库导入数据时出现乱码的解决办法

首先在新建数据库时一定要注意生成原数据库相同的编码形式,如果已经生成可以用phpmyadmin等工具再整理一次,防止数据库编码和表的编码不统一造成乱码. 方法一: 通过增加参数 –default-character-set = utf8 解决乱码问题 mysql -u root -p password < path_to_import_file –default-character-set = utf8 方法二: 在命令行导入乱码解决 1. use database_name; 2. set n

solr6.6.2学习记录之三:从sqlserver数据库导入数据(全量导入)

1.配置准备 前提已经配置好了solr,并新创建了一个core;(我的是:D:\solr_home\core_demo) sqlserver数据库 ,  以数据库:demo_solr ,单表(demo_user)为例. 2.修改sorlconfig.xml sorlconfig.xml 位置: D:\solr_home\core_demo\conf ; 在 soreconfig.xml 的<requestHandler name="/select" class="sol