1) 将mysql-connector-java-5.1.26.jar放进solr-5.5.0/dist
2)solr-5.5.0/server/solr/core1/conf/solrconfig.xml 配置:
data-config.xml
3) 在solr-5.5.0/server/solr/core1/conf/ 目录下创建data-config.xml, 内容如下:
假设Mysql的数据库用户名密码是root/password,假设已经在mysql中创建了数据库"demo_db", 表"demo_tbl",字段如下:
CREATETABLE`demo_tbl`(`id`INT(20)NOTNULLAUTO_INCREMENTCOMMENT'自增ID',`name`VARCHAR(50)NOTNULLCOMMENT'姓名',`description`VARCHAR(50)NOTNULLCOMMENT'描述',`timestamp`TIMESTAMPNOTNULLDEFAULTCURRENT_TIMESTAMPONUPDATECURRENT_TIMESTAMPCOMMENT'时间戳',PRIMARYKEY(`id`)) 注意,做增量导入,要求数据表有一个timestamp字段,以此来判断每次处理的时间
url="jdbc:mysql://127.0.0.1/dmp_platform" user="root" password="password" />
query="select * from demo_tbl"
deltaImportQuery="select * from demo_tbl where id ='${dih.delta.id}'"
deltaQuery="select id from demo_tbl where timestamp > '${dih.last_index_time}'">
同时,需要设置solr-5.5.0/bin/solr.in.sh里的时区:
SOLR_TIMEZONE="UTC+8"
4) solr-5.5.0/server/solr/core1/conf/schema.xml,配置:
id
description字段采用text_ik即IKAnalyzer进行分词和查询处理,并且此字段进行索引,存储。
5) 数据导入测试
勾选“Auto-Refresh Status”以后,页面会自动刷新状态,否则需要手动点击"Refresh Status"。
增量导入的时候不要勾选“clean”,否则会将之前的数据清除。
做完全量导入以后,在Mysql数据库新增一条数据,然后在页面上做deltaimport:
6) 索引查询测试
参考文献:
https://wiki.apache.org/solr/DataImportHandler