Solr数据库导入

Solr数据库导入

1、在MySQL中创建一张表t_solr,并插入测试数据。

2、把E:\Solr\solr-4.10.4\example\example-DIH\solr\db\conf下的admin-extra.html, admin-extra.menu-bottom.html,admin-extra.menu-top.html三个文件也复制到conf中去。

打开E:\Solr\solrHome\mycore\conf路径下的

solrconfig.xml文件,添加如下节点:


<requestHandlername="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">

<lstname="defaults">

<strname="config">data-config.xml</str>

</lst>

</requestHandler>

3、新建一个data-config.xml文件,与solrconfig.xml同一个目录下。内容为:


<dataConfig>

<dataSource type="JdbcDataSource"

driver="com.mysql.jdbc.Driver"

url="jdbc:mysql://localhost/test"

user="root"

password="giser" />

<document>

<entity name="t_solr" transformer="DateFormatTransformer"

query="SELECT id, subject, content, last_update_time FROM t_solr WHERE id >= ${dataimporter.request.id}">

<field column=‘last_update_time‘ dateTimeFormat=‘yyyy-MM-dd HH:mm:ss‘ />

</entity>

</document>

</dataConfig>

说明:这里使用了一个${dataimporter.request.id},这个是参数,后面在做数据导入时,会使用到,以此条件为基准读数据。

4、复制解压出的solr jar包(E:\Solr\solr-4.10.4\dist)solr-dataimporthandler-4.10.0.jar和solr-dataimporthandler-extras-4.10.0.jar到tomcat solr webapp的WEB-INF\lib目录下(E:\Solr\apache-tomcat-7.0.65\webapps\solr\WEB-INF\lib)。

当然,也包括mysql的jdbc jar包:mysql-connector-java-5.1.7-bin.jar

(还有一种方法是在solrconfig.xml中加入lib节点,然后把jar包放到solrhome下,这样可以不在WEB-INF\lib中加入jar包)

5、用记事本打开E:\Solr\solrHome\mycore\conf路径下的schema.xml,在solrhome文件夹中添加内容如下:


<!—type对应 -->

<fieldtype name="string"  class="solr.StrField" sortMissingLast="true" omitNorms="true"/>

<fieldType name="long" class="solr.TrieLongField" precisionStep="0" positionIncrementGap="0"/>

<field name="subject" type="string" indexed="true" stored="true" />

<field name="content" type="string" indexed="true" stored="true" />

<defaultSearchField>subject</defaultSearchField>

6、打开Solr,查询数据

通过地址直接访问:http://localhost:8080/solr/mycore/dataimport?command=full-import&clean=true&commit=true&wt=json&indent=true&entity=t_solr&verbose=false&optimize=false&debug=false&id=1

结果如图所示:

配置好后,之后我们只需要使用这个url地址,就可以不断的去导入数据做索引了。

通过DataImport生成索引:

查询结果:

  总结:

遇到的问题1:


mysql java.sql.SQLException: Unknown system variable ‘language&#03

一:问题描述:mysql测试连接一致报错:Unknown system variable ‘language‘ 未知名的系统变量语言

二:用的Mysql的版本 5.6 用的连接 jar  mysql-connector-java-5.1.36.jar

三:找到问题,mysql-connector-java-5.1.36.jar版本太高了,换成

mysql-connector-java-5.1.24.jar 问题解决!

遇到的问题2:

  把solr-6.0\solr-6.0.0\example\example-DIH\solr\db\conf下的admin-extra.html, admin-extra.menu-bottom.html,admin-extra.menu-top.html三个文件也复制到conf中去。

时间: 2024-10-14 16:16:12

Solr数据库导入的相关文章

[solr] - 数据库导入

这里使用的是mysql测试. 1.先在mysql中建一个表:solr_test 2.插入几条测试数据: 3.用记事本打solrconfig.xml文件,在solrhome文件夹中.E:\solrhome\mycore\conf\solrconfig.xml (solrhome文件夹是什么,参见:http://www.cnblogs.com/HD/p/3977799.html) 加入这个节点: <requestHandler name="/dataimport" class=&qu

Solr数据库导入Data Import Handler

Data Import Handler 可以从数据库,网页地址等剑姬文档. 可以全量添加,也支持增量添加(只增加修改的内容) 使用DIH,需要3步重要的配置. 首先,向solrconfig中增加使用的jar包. <lib dir="../../../contrib/dataimporthandler/lib" regex=".*\.jar" /><lib dir="../../../dist/" regex="solr

solr连接数据库导入数据

本文简单讲诉 solr建立全文索引,从数据库导入数据,生成索引文件,本文建立在已经搭建好solr应用的情况下,如要了解如何部署solr服务可先看上一文:solr 安装 环境:jdk 7,solr4.10.1 ,tomcat 7 附:参考文档地址:http://wiki.apache.org/solr/DataImportHandler 1,首先在solrconfig.xml中引入dataimport 路径 : E:\solr\example\solr\collection1\conf <requ

Solr定时导入功能实现

需要实现Solr定时导入功能的话,我们可以通过使用Solr自身所集成的dataimportscheduler调度器实现 下载对应的jar包,下载地址https://code.google.com/archive/p/solr-dataimport-scheduler/downloads 通过WinRAR打开jar包我们发现里面有一个名叫dataimport.properties的配置文件 ################################################# # #

expdp impdp 数据库导入导出命令详解

一.创建逻辑目录,该命令不会在操作系统创建真正的目录,最好以system等管理员创建. create directory dpdata1 as 'd:\test\dump'; 二.查看管理理员目录(同时查看操作系统是否存在,因为Oracle并不关心该目录是否存在,如果不存在,则出错) select * from dba_directories; 三.给scott用户赋予在指定目录的操作权限,最好以system等管理员赋予. grant read,write on directory dpdata

功能齐全、效率一流的免费开源数据库导入导出工具(c#开发,支持SQL server、SQLite、ACCESS三种数据库),每月借此处理数据5G以上

软件名:DataPie 功能:支持SQL server.SQLite.ACCESS数据库的导入.导出.存储过程调用,支持EXCEL2007.EXCEL2003.ACCESS2007. CSV文件导入数据库,支持EXCEL.CSV.ZIP.ACCESS文件方式导出,支持数据拆分导出及自定义SQL查询与导出. 开发背景:作者从事财务管理工作,主要是出具集团的内部财务报表,随着公司精细化管理的需求,管理报表的数据量急速增长, 依赖EXCEL加工处理数据已经变得极为困难,因此团队全面转向关系数据库进行数

mysql数据库导入导出及修改数据库名命令

概述 mysql 数据库导入导出,有两种方式 1)先导出SQL脚本,再导入(导入导出又分两种:1. 命令. 2. 工具.这里我们只介绍命令). 2)直接拷贝数据库文件(此方法不推荐). 一.mysql数据库导入 1.  已有数据库,可以直接用mysql命令 命令格式 mysql -u用户名 -p密码 数据库名 <  sql文件路径 示例:mysql -uroot -p12345678  test <  /root/test.sql 2.  创建新数据导入 mysql -uroot -p1234

linux系统上Mysql数据库导入导出操作

需求:把MySQL数据库目录中的dz数据库备份到/home/dz_bak.sql ,然后再新建一个数据库dzbak,最后把/home/dz_bak.sql 导入到数据库dzbak中.操作如下:以下操作均在终端命令行下进行 1.mysqldump -u root -p dz > /home/dz_bak.sql        #导出数据库     123456     #输入数据库密码     扩展:     mysqldump -u root -p dz pre_portal_comment >

mysql数据库导入、导出、数据传输

Navicat数据库之间导入导出1.双击要导出的数据库,右键选转储SQL文件...,选择要保存的文件夹. 2.点击开始后,开始导出. 数据库导入1.新建数据库,数据库的名字必须和导入的数据库文件一致. 2.在新建的数据库右键,选择运行SQL文件... 3.文件中填入需要导入的文件.下一步即可导入.   服务器数据库copy到本地数据库,Navicat分别连接服务器端数据库,本地数据库,可以用上面的方法.另外再介绍一种方法:数据传输 1>在本地建一个与服务器端数据库同名的数据库 2>选择navi