https://lucene.apache.org/solr/downloads.html
直接上官网下一个,注意本例用的是下图版本
image.png
上阿里云的Maven镜像网站下个分词器的jar包,这里我用的是ik分词器
https://maven.aliyun.com/mvn/search
image.png
将下载的solr-7.7.2.zip解压出来,我这边重新给他命名了一个文件夹名叫solr-7.7.2-jetty用来区分。
在solr-7.7.1/server/solr/目录下创建new_core文件夹
image.png
将solr-7.7.1/example/example-DIH/solr/db下的conf文件夹copy到new_core文件夹下
image.png
image.png
将下载的ik-analyzer-solr7-7.x.jar文件copy到solr-7.7.1/server/solr-webapp/webapp/WEB-INF/lib文件夹下。
image.png
修改solr-7.7.1/server/solr/new_core/conf/managed-schema,在<schema>节点下copy如下内容,其中field的设置又是一堆坑,不过这里只要按照这么复制进去就可以了,我会在另一个文章写写我的踩坑经历
image.png
<!-- ik分词器 -->
<fieldType name="text_ik" class="solr.TextField">
<analyzer type="index">
<tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="false" conf="ik.conf"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
<analyzer type="query">
<tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="true" conf="ik.conf"/>
<filter class="solr.LowerCaseFilterFactory"/>
</analyzer>
</fieldType>
<field name="item_username" type="text_ik" indexed="true" stored="true"/>
<field name="item_email" type="text_ik" indexed="true" stored="true"/>
<field name="item_qq" type="text_ik" indexed="true" stored="true"/>
<field name="item_password" type="text_ik" indexed="true" stored="true"/>
<field name="keyword" type="text_ik" indexed="true" stored="false" multiValued="true"/>
<copyField source="item_username" dest="keyword"/>
<copyField source="item_email" dest="keyword"/>
<uniqueKey>id</uniqueKey>
启动solr,可以访问bin文件夹下后,在地址栏输入cmd,就可以快速用win的黑窗口定位到这个文件夹位置啦
image.png
输入solr start即可启动solr,solr stop -all为停止solr,当然直接把窗口关闭也行。
image.png
启动之后访问localhost:8983之后就能看到solr的管理页面啦,点击Core Admin来添加新的Core,不用修改直接创建就完事了。solr的Core就像mysql的具体的数据库,里面也是用来存储的,不过solr,Lucene这种更注重搜索啦
![]()
在Add Core完成后,就可以选择创建的new_core里的Analysis来测试一下分词器的效果了,注意,需要在Analyse Fieldname / FieldType:一栏找到text_ik,如果没找到,说明前面配置有问题,没有用ik分词器
image.png
注意!!此时的solr基本算是配置完成了,也就是说能用了。但是刚才也说了,solr可以看做一个数据库,那么里面的数据怎么导入呢,请移步我的另一篇文章。solr数据导入的两种方法
网友评论