solr6.6教程-从mysql数据库中导入数据(三)
整理多半天的solr6.6,终于算是把solr6.6中配置数据库弄出来了,网上的文章千篇一律,各说个的,没有一篇统一覆盖solr6.6版本配置的 帖子,本章节我会把配置的一些注意事项一一列举,由于时间原因,本片只介绍如何一次性导入数据,不附带增量导入,想看增量的同学可以在后面的文章中。
1,配置准备
本文的前提是你已经配置好了solr,并新创建了一个core,我们下面都会按照前一篇文章中的core_demo为基础开始
2,修改soreconfig.xml
在soreconfig.xml的<requestHandler name="/select" class="solr.SearchHandler">上面添加如下代码:
<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
<lst name="defaults">
<str name="config">data-config.xml</str>
</lst>
</requestHandler>
注意:需要确认文件中不存在其他的dataimport,如果存在直接替换即可
在同级目录下创建data-config.xml文件,然后配置数据库相关属性
<?xml version="1.0" encoding="UTF-8"?>
<dataConfig>
<dataSource name="source1" type="JdbcDataSource"
driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://127.0.0.1:3306/ecejcallcenter"
user="root"
password="123456" />
<document>
<entity name="cc_bill" dataSource="source1" pk="bill_id"
query="SELECT cc_bill.bill_id,cc_bill.`name`,cc_bill.address,cc_bill.city_name,cc_bill.create_time FROM cc_bill">
<field column='bill_id' name='billid' />
<field column='name' name='name' />
<field column='address' name='address' />
<field column='city_name' name='cityname' />
<field column='create_time' name='createtime' dateTimeFormat='yyyy-MM-dd HH:mm:ss' />
</entity>
</document>
</dataConfig>
关于详细的配置请参照:http://blog.csdn.net/boolbo/article/details/50352331
官方wiki:https://cwiki.apache.org/confluence/display/solr/
3,配置managed-schema.xml
<?xml version="1.0" encoding="UTF-8" ?> <schema name="example" version="1.6"> <field name="billid" type="int" indexed="true" stored="false"/>
<field name="name" type="string" indexed="true" stored="true"/>
<field name="address" type="string" indexed="true" stored="true"/>
<field name="cityname" type="string" indexed="true" stored="true"/>
<field name="createtime" type="date" indexed="true" stored="true"/> <field name="_version_" type="long" indexed="false" stored="false"/>
<field name="text" type="string" indexed="true" stored="false" multiValued="true"/>
<field name="_root_" type="string" indexed="true" stored="false" docValues="false" /> <uniqueKey>billid</uniqueKey> <fieldType name="string" class="solr.StrField" sortMissingLast="true" />
<fieldType name="int" class="solr.TrieIntField" docValues="true" precisionStep="" positionIncrementGap=""/>
<fieldType name="long" class="solr.TrieLongField" docValues="true" precisionStep="" positionIncrementGap=""/>
<fieldType name="date" class="solr.TrieDateField" docValues="true" precisionStep="" positionIncrementGap=""/> </schema>
网上很多教程说到schema.xml,这个文件是solr之前的版本中用到的,6.6版本是不需要的,直接修改上面的文件就可以。
4,拷贝jar
拷贝solr-6.6.0\dist路径下的solr-dataimporthandler-6.6.0.jar,solr-dataimporthandler-extras-6.6.0.jar 到E:\Java\tomcat\apache-tomcat-8.0.26-windows-x64\webapps\solr\WEB-INF\lib目录下
同时拷贝mysql-connector-java-5.1.40.jar链接jar到该目录下
不需要修改任何配置文件即可,继续下面的步骤
5,修改jar配置路径
继续打开solrconfig.xml 找到lib标签,修改jar的路径,下面贴上我本地修改后的路径
<lib dir="E:\Java\components\solr-6.6.0/contrib/extraction/lib" regex=".*\.jar" />
<lib dir="E:\Java\components\solr-6.6.0/dist/" regex="solr-cell-\d.*\.jar" /> <lib dir="E:\Java\components\solr-6.6.0/contrib/clustering/lib/" regex=".*\.jar" />
<lib dir="E:\Java\components\solr-6.6.0/dist/" regex="solr-clustering-\d.*\.jar" /> <lib dir="E:\Java\components\solr-6.6.0/contrib/langid/lib/" regex=".*\.jar" />
<lib dir="E:\Java\components\solr-6.6.0/dist/" regex="solr-langid-\d.*\.jar" /> <lib dir="E:\Java\components\solr-6.6.0/contrib/ltr/lib/" regex=".*\.jar" />
<lib dir="E:\Java\components\solr-6.6.0/dist/" regex="solr-ltr-\d.*\.jar" /> <lib dir="E:\Java\components\solr-6.6.0/contrib/velocity/lib" regex=".*\.jar" />
<lib dir="E:\Java\components\solr-6.6.0/dist/" regex="solr-velocity-\d.*\.jar" />
不需要添加任何jar即可
6,重启tomcat,刷新solr页面即可看到下面界面

full-import 全量导入,delta-import-增量导入
点击Execute就可以导入了,点击左侧Query可查询导入的数据

solr6.6教程-从mysql数据库中导入数据(三)的更多相关文章
- Solr 07 - Solr从MySQL数据库中导入数据 (Solr DIH的使用示例)
目录 1 加入数据导入处理器的jar包 2 加入数据库驱动包 3 配置solrconfig.xml文件 3.1 配置lib标签 - 加入驱动jar包 3.2 配置requestHandler标签 - ...
- [MySQL]load data local infile向MySQL数据库中导入数据时,无法导入和字段不分离问题。
利用load data将文件中的数据导入数据库表中的时候,遇到了两个问题. 首先是load data命令无法执行的问题: 命令行下输入load data local infile "path ...
- Solr 创建core 从MySql数据库中导入数据
一.创建数据表和数据 在MySql数据中创建mysolrInfo表, 创建字段 id 主键,自动增加 pname :姓名 age :年龄 addtime :增加时间 增加几条数据 二.创建core 当 ...
- 从Mysql数据库中导入导出表结构
1.从Mysql数据库中导入sql表 很简单,只需要一个命令即可搞定:[root@localhost ~]# mysql -uroot -piweb_xxx_mysql iweb < modif ...
- 使用sqoop将MySQL数据库中的数据导入Hbase
使用sqoop将MySQL数据库中的数据导入Hbase 前提:安装好 sqoop.hbase. 下载jbdc驱动:mysql-connector-java-5.1.10.jar 将 mysql-con ...
- python制作简单excel统计报表3之将mysql数据库中的数据导入excel模板并生成统计图
python制作简单excel统计报表3之将mysql数据库中的数据导入excel模板并生成统计图 # coding=utf-8 from openpyxl import load_workbook ...
- mysql数据库中插入数据INSERT INTO SET的优势
往mysql数据库中插入数据.以前常用 INSERT INTO 表名 (列名1,列名2…) VALUES(列值1,列值2); 如果在PHP程序中,就会写成如下示例(往商品库里增加商品) $sql = ...
- ArcCatalog中通过ArcSDE向Oracle数据库中导入数据
将数据导入到Oracle指定的表空间的具体内容如下: 首先,在ArcCatalog中建立指定表空间的数据库连接(要以指定表空间的用户登录): 然后,在ArcCatlog中定位到数据源,选中并拷贝图层; ...
- JDBC Java 程序从 MySQL 数据库中读取数据,并备份到 xml 文档中
MySQL 版本:Server version: 5.7.17-log MySQL Community Server (GPL) 相关内容:JDBC Java 程序从 MySQL 数据库中读取数据,并 ...
随机推荐
- Java 获得Class的绝对路径方法
Java获得class文件的绝对路径:1.e.g. Foo.class => Foo.class.getResuorce("").getFile(); 该方法在eclipse ...
- java.lang.NoClassDefFoundError: javax/mail/Authenticator
摘录自:http://stackoverflow.com/questions/1630002/java-lang-noclassdeffounderror-javax-mail-authenticat ...
- python环境搭建--pycharm的安装及使用
学习网址: --菜鸟教程(2.0和3.0) http://www.runoob.com/python/python-tutorial.html http://www.runoob.com/python ...
- win7 使用anaconda安装tensorflow并且在jupyter notebook上启动
记录一下学习深度学习的小事情: 1.tensorflow 现在只支持windows 64位系统: 2.因为实验室的电脑比较老旧,Gpu配置低,所以选择安装的是tensorflow Cpu版本,对于学习 ...
- 【处理多服务器日志合并处理问题】多服务器的日志合并统计——apache日志的cronolog轮循
转发:http://www.chedong.com/tech/rotate_merge_log.html 内容摘要:你完全不必耐心地看完下面的所有内容,因为结论无非以下2点:1 用 cronolo ...
- 智能家居esp8266对接机智云
依然存在稳定性问题 机智云官网--机智云 一个比较详细的教程--esp8266 一开始采用的是esp12f 可是他太不稳定,总是掉线,机智云的固件我也是刷了无数遍,哎太难了. 我比较懒,走过了太多 ...
- System包含的信息
System类中的属性值 System.getProperty()方法大全 System.out.println("java版本号:" + System.getProperty(& ...
- 仿百度糯米TP5项目笔记
需求分析 系统三大模块 商家平台.主平台.前台模块 Thinkphp5.0实战 仿百度糯米开发多商家电商平台网盘下载 (2017-04-24 01:46:23) 转载▼ 第1章 课程简介 本章 ...
- 《.NET 设计规范》第 5 章:成员设计
<.NET 设计规范>第 5 章:成员设计 5.1 成员设计的通用规范 要尽量用描述性的参数名来说明在较短的重载中使用的默认值. 避免在重载中随意地改变参数的名字.如果两个重载中的某个参数 ...
- Core Animation 文档翻译 (第六篇)
高级动画技巧 配置属性动画或者关键帧动画的方式是多种多样的.需要同时执行多个动画或者顺序执行多个动画的APP,可以通过高级的方式同步这些动画的timing或者将这些动画绑定在一起.我们也可以使用其 ...