项目里,涉及到全文检索,为了方便快速开发和维护,最终使用solr来解决这个问题。下面分享下搭建过程。
1、下载solr,这里我使用的solr版本是:4.10.4
2、解压缩:
目录结构
3、在linux的某个目录中【这里依然使用/usr/local】,新建一个名字叫solr的目录,这么做主要是方便管理,可以把solr所有的东西都丢到这个目录中,这里先把tomcat放到这个目录中
新建一个叫solr的目录
4、进入dist目录,找到一个war工程,将其拷贝到tomcat的webapps下面,启动下tomcat,让war包解压缩,然后停掉tomcat,如图:
解压缩war包
5、在solr目录下,新建两个目录叫solr_home和solr_lib,【这里其实有一个技巧,solr_lib主要是用来放置拓展jar包,例如:分词器、import插件等等,如果放在这里,还需要引路径配置,如果想偷懒的话,就直接把要用到的jar包,直接丢进webapps/solr/WEB-INF/lib目录中就行了】
6、solr_home其实是用来放置配置文件以及索引数据的,下载下来的安装包里有一个solr_home的例子,就是example目录下的solr目录,将该目录里面的文件统统拷贝到solr_home目录中
拷贝solr_home
7、修改web.xml文件,指定solrHome
修改web.xml文件
指定solr home
8、进入:collection1目录,这里,collection1其实就是当前文档库的名字,可以把它理解成数据库里的一张表,如果要改目录名字,那么还要同时修改core.properties里面的name参数:
9、进入collection1的conf目录,打开solrconfig.xml,添加数据库导入插件【1、引jar包;2、添加Handler】,包括数据库连接驱动【这里使用mysql】
10、进入collection1的conf目录,在schema.xml中定义字段名,这里id默认是string类型,如果想和数据库保持一致,比如:想设置为long类型,那么需要两步操作【1、修改type为long 2、修改solrconfig.xml,注释掉<serachComponent>】
修改solrconfig.xml,注释掉<serachComponent>
11、在collection1/conf中新建一个data-config.xml文件,加入对应的导入逻辑
12、拷贝日志相关jar到web项目中
13、启动tomcat
选择collection1
将数据库中数据手工导入solr
查询
到此,简单的solr搭建就已经完成了。