演示使用solr管理后台,以mysql为数据源,批量建索引的方法
测试于:Solr 4.5.1, mmseg4j 1.9.1, Jdk 1.6.0_45, Tomcat 6.0.37 | CentOS 5.7
配置数据源
[root@devnote ~]# cd /root/solr-4.5.1/example/example-DIH/solr/db/conf [root@devnote conf]# touch mysql-data-config.xml
编辑mysql-data-config.xml,根据需要添加新内容,内容可参见同目录下db-data-config.xml文件
transformer="HTMLStripTransformer"配合stripHTML="true"使用来达到过滤正文html标签的作用。
配置dataimport handler
打开solr管理后台,选择相应的core,选择Dataimport(可参考如下第二张截图)
初次使用此功能,会显示:sorry, no dataimport-handler defined!编辑solrconfig[root@devnote ~]# vi solr-4.5.1/example/solr/collection1/conf/solrconfig.xml
加入如下代码
/root/solr-4.5.1/example/example-DIH/solr/db/conf/mysql-data-config.xml
添加位置根据自己的习惯,便于查找即可,我这里放到系统内置最后一个handler,replication之下,如:
重启报错:引入需要的包即可
[root@devnote ~]# cp solr-4.5.1/dist/solr-dataimporthandler-*.jar /opt/tomcat/webapps/solr/WEB-INF/lib/
因为涉及到连接mysql,自己找一个mysql的驱动包也放到上述lib中
重启
执行创建索引
- 选择对应的core;
- 选择Dataimport;
- 选择实体article;(注Solr 4.9.0中实体列表为空,解决方法参见:)
- 执行Execute;
- Refresh Status查看状态,右侧会显示正确索引的数量。