solr5.5索引mysql数据(新手总结)
一 solr5.5环境部署到Eclipse(luna版)
solr部署参见:http://blog.csdn.net/csmnjk/article/details/64121765
二 Ik分词器设置
IK分词器设置参见:http://blog.csdn.net/csmnjk/article/details/51693578
solr4版本的schema.xml文件对应solr5版本的managed-schema文件,确保http://localhost:8080/solr/admin.html登陆成功。
三 MySQl配置
1. 连接MYSQL数据库需要两个jar包:solr-dataimporthandler-5.5.0 jar和mysql-connector-java-5.1.40-bin.jar。前一个包在solr-5.5.0/dist中,后一个包http://download.csdn.net/download/u012453843/9667329点击下载。
2. 创建表
create table `article` (
`id` int unsigned not null auto_increment comment '主键编号',
`title` varchar(64) not null comment '书名',
`author`varchar(10) not null default 0 comment '作者',
`type`varchar(10) not null default 0 comment '类型',
primary key (`id`))
engine = innodb
auto_increment = 1
default character set = utf8 ;

3. 配置文件
(1)在solrHome\core\conf中的solrcong.xml文件下新增如下配置
<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
<lst name="defaults">
<str name="config">data-config.xml</str>
</lst>
</requestHandler>
并注释以下代码:
<schemaFactory class="ManagedIndexSchemaFactory">
<bool name="mutable">true</bool>
<str name="managedSchemaResourceName">managed-schema</str>
</schemaFactory>
(2)在conf文件夹下新建data-config.xml文件,并添加如下配置
<dataConfig>
<dataSource type="JdbcDataSource" driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost/test" user="root" password="password" />
<document name="article">
<entity name="article" pk="id"
query="select * from article"
deltaImportQuery="select * from article where id ='${dih.delta.id}'"
deltaQuery="select id from article where timestamp > '${dih.last_index_time}'">
</entity>
</document>
</dataConfig>
说明:user: MySQL用户名, password:MySQL登录密码,test:数据库名, article:表名。
(3)在其他地方备份managed-schema,将其改名为schema.xml。添加索引字段配置
<field name="title" type="text_ik" indexed="true" stored="true" multiValued="true" />
<field name="description" type="text_ik" indexed="true" stored="true" />
<field name="author" type="text_ik" indexed="true" stored="true" />
至此配置完成!
四 启动solr

core0->Dataimport->full-import->Execute,执行之后点下Refresh Status,右边就会显示索引信息。
查询验证下:

表中的四条数据全被索引并成功查询。
solr5.5索引mysql数据(新手总结)的更多相关文章
- 使用Solr索引MySQL数据
环境搭建 1.到apache下载solr,地址:http://mirrors.hust.edu.cn/apache/lucene/solr/ 2.解压到某个目录 3.cd into D:\Solr\s ...
- 使用sphinx索引mysql数据
数据库表如下 mysql> select * from tb_account; +----+-------+------+ | id | name | age | +----+-------+- ...
- Kettle ETL 来进行mysql 数据同步——试验环境搭建(表中无索引,无约束,无外键连接的情况)
今天试验了如何在Kettle的图形界面(Spoon)下面来整合来mysql 数据库中位于不同数据库中的数据表中的数据. 试验用的数据表是customers: 第三方的数据集下载地址是:http://w ...
- Mysql数据库主键,外键,索引概述
主键: 主键是数据表的唯一索引,比如学生表里有学号和姓名,姓名可能有重名的,但学号确是唯一的,你要从学生表中搜索一条纪录如查找一个人,就只能根据学号去查找,这才能找出唯一的一个,这就是主键;如:id ...
- MySQL数据和索引占用空间查询
MySQL数据和索引占用空间查询 查询所有数据库占用磁盘空间大小的SQL语句 SELECT table_schema, -- 数据库名称 concat( TRUNCATE ( sum( data_le ...
- MySql数据表设计,索引优化,SQL优化,其他数据库
MySql数据表设计,索引优化,SQL优化,其他数据库 1.数据表设计 1.1数据类型 1.2避免空值 1.3text类型优化 2.索引优化 2.1索引分类 2.2索引优化 3.SQL优化 3.1分批 ...
- solr实时更新mysql数据的方法
第一步:创建core core是solr的特有概念,每个core是一个查询数据,.索引等的集合体,你可以把它想象成一个独立数据库,我们创建一个新core:名字[core1] 进入linux命令行,进入 ...
- macOS安装Solr并索引MySQL
安装 Java 语言的软件开发工具包 brew cask install java 或者在 Oracle官网 中选择 Mac 版本 jdk-8u111-macosx-x64.dmg 下载并安装. 安装 ...
- MySQL数据的主从复制、半同步复制和主主复制详解
一.MySQL复制概述 ⑴.MySQL数据的复制的基本介绍 目前MySQL数据库已经占去数据库市场上很大的份额,其一是由于MySQL数据的开源性和高性能,当然还有重要的一条就是免费~不过不知道还能免费 ...
随机推荐
- idea 查看tomcat源码
一.源码下载 SVN :http://svn.apache.org/repos/asf/tomcat/ GIT :https://github.com/apache 二.添加pom.xml文件 1. ...
- Java static 关键字详解
引言 在<Java编程思想>中有这样一段话:static方法就是没有this的方法.在static方法内部不能调用非静态方法,反过来是可以的.而且可以在没有创建任何对象的前提下,仅仅通过类 ...
- 深入Java集合学习系列:Hashtable的实现原理
第1部分 Hashtable介绍 和HashMap一样,Hashtable也是一个散列表,它存储的内容是键值对(key-value)映射.Hashtable继承于Dictionary,实现了Map.C ...
- 关于ie的h5 刷新和ctrl+5刷新 以及图标刷新的问题
最近在做一个表单验证,当表单失去焦点的时候触发错误提示. 可是..... 火狐 欧朋 刷新都没有问题,而在ie edge 用f5刷新的时候 都能记住之前的焦点 造成提示混乱. 问题算是解决: < ...
- c++ 自动应用类型转换
c++中,在赋值时如果类型不匹配,就会应用到:类型转换.类型转换又分为隐式转换(implicit conversion) 和 显式强制类型转换(emplcit conversion).在这我围绕着类的 ...
- 《Android进阶》之第二篇 launcher
public boolean addViewToCellLayout(View child, int index, int childId, LayoutParams params, boolean ...
- 备忘录《一》基于cookie使用拦截器实现客户每次访问自登陆一次
原创声明:本文为本人原创作品,绝非他处摘取,转载请联系博主 相信大家在各大网站都会遇到,登录时,在登录框出现下次免登陆/一个月免登陆的类似选项,本次博文就是讲解如何实现,在这记录一下,也算是做个备忘录 ...
- meta标签属性总结
一.常见name属性.不同参数含义 meta标签的name属性语法格式是: <meta name="参数" content="具体的参数值"> 其中 ...
- sql还原(.bak文件还原)
第一步: 右键“数据库”,选择“还原数据库” 第二步: 选择“设备”,然后选择“…” 第三步: 添加备份文件(这里使用MyDB.bak) 第四步: 勾选“还原”复选框,进度显示“已完成” 第五步: 最 ...
- IPv6启动五年后,距离我们究竟还有多远?
作者:RicardoIPv6拥有更好的IP拓展性,更高的安全保障以及更快的传输速度,互联网协会将2012年6月6日定为了世界IPv6启动日,距此5年后,国内外Cloudflare.又拍云等CDN服务已 ...