最近业务上需要开始使用solr,从官网上下载的6.6发现网上关于6.6的资料比较少,甚至solr in action 中也没有对应的示例,所以一路踩坑终于成功
分享如下:
1、包依赖 (问题 不知道放什么包或 找不到对应版本的包)
mysql-connector-java-5.1.43-bin.jar(http://download.csdn.net/download/nnmeo/9956245 也可以这mysql官网下载)
solr-dataimporthandler-6.6.0.jar (csdn下载 在本地solr/dist下一般也可以找到)
solr-dataimporthandler-extras-6.6.0.jar (csdn下载 在本地solr/dist下一般可以找到) 如果找不到 可以用 find 命令 搜索一下(find ./ -name '*dataimport*')
把这三个包统统放到 solr/server/solr-webapp/webapp/WEB-INF/lib 下
2、配置solrconf.xml (如果你用的是cloud模式 找不到这个文件 只能在网页上配置,存储在zookpeer中 后面会讲)
增加一个requestHandler如下:
data-config.xml
这里只是声明了会有一个dataimport 操作,数据详情配置在 同目录的data-config.xml中配置
data-confi.xml 内容如下:
password="test" batchSize="-1"/>
solr中有一个很重要的概念 --文档:这个对于本例来说一行记录就是一个文档。
上面的配置中
video是指实体名称 可以和表名一致 column 为映射到solr中的名称(在manage-schema中会用到),name为mysql表中的字段的名称 3、配置manage-schema (solr6.6已经没有schema.xml,可以直接修改这个文件,也可以在网页上配置) 设置一个唯一key id 并且把这个key的树形设置成 multiValued="false" indexed="true" required="true" stored="true" 这很重要,uniquekey 会保证你重复建索引时 数据不会重复 至此 重启solr 在页面中找到对应的core点击dataimport 并执行 execute 查看logging,如果没有wanning 就ok了 注:配置文件的位置在 core下面而不是在安装目录下 如在使用中遇到问题欢迎留言交流!!