。# Solr6.3配置和Ik-analyzer6.3使用
标签(空格分隔): Solr
window环境下solr6.3配置
一、环境
1、solr6.3
2、JDK1.8
3、Tomcat9.0.0(Tomcat8也可以)
二、过程
1、下载tomcat和solr压缩包并解压;
2、将 solr 压缩包中 solr-6.3.0\server\solr-webapp\文件夹下有个webapp文件夹,将之复制到Tomcat\webapps\目录下,文件夹名改成solr(任意) ;
3、将 solr 压缩包中 solr-6.3.0\server\lib\ext 中的 jar 全部复制到 Tomcat\ webapps\solr\WEB-INF\lib 目录中;
4、将 solr 压缩包中 solr-6.3.0/ server/resources /log4j.properties 复制到Tomcat\ webapps\solr\WEB-INF\lib 目录中;
5、将 solr 压缩包中 solr-6.3.0/server/solr 目录复制到计算机某个目录下,如D:\solr_home(solr创建的core到时会存放在该目录下);
6、打开Tomcat/webapps/solr/WEB-INF下的web.xml,找到如下配置内容(初始状态下该内容是被注释掉的):
- 1
- 2
- 3
- 4
- 5
将 env-entry-value中的内容改成你的solr_home路径,这里是D:/solr_home/solr;
【如果报403错误,403一般都是没有权限】。
修改:web.xml,将以下代码注释即可
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
三、创建第一个core
1、将solr-6.3.0/dist中的solr-dataimporthandler、solr-dataimporthandler-extras的jar包copy到tomcat\webapps\solr\WEB-INF\lib下;
2、在D:\solr_home\solr下创建my_core文件夹(名称与下图的instanceDir一致,建议下图中的name也和该文件夹名一致);
3、在my_core文件夹下创建data和conf文件夹;
4、将solr-6.3.0\example\example-DIH\solr\solr\conf所有文件和文件夹都copy到D:\solr_home\solr\my_core\conf下;
5、启动tomcat,访问solr,创建core,新增core即可完成;
6、可以在“core selector”这里查询和编辑你的solr相关信息;
参考图:
四、配置中文Ik分词器
1、将Ikik-analyzer-solr-6.3.0.jar【下载链接】放到Tomcat下的\solr\WEB-INF\lib下
2、将下载的IKAnalyzer.cfg.xml、mydict.dic、stopword.dic放到Tomcat中的solr\WEB-INF\classes目录下,如果没有classes文件夹就创建
3、修改solr_home\solr\my_core\conf下的managed-schema文件
- 1
- 2
- 3
- 4
- 5
3、重启Tomcat重新访问
分词示例
在Linux下的安装可参考:
CentOS安装solr6.3配置IK
使用过程中的问题可参考:
Solr启动使用分词时,异常:Connection to Solr lost Please check the Solr instance
使用IK分词时出现如下信息:
异常:Connection to Solr lost Please check the Solr instance
可以通过设置Tomcat的catalina.sh文件,在/tomcat/bin/目录下
在文件中增加:
JAVA_OPTS="-Xms256m -Xmx512m -Xss1024k -XX:PermSize=128m -XX:MaxPermSize=256m"
Windows和Linux都可使用。此配置是修改JVM的内存大小
重新启动Tomcat即可。
这种情况仅仅在使用IK分词的时候出现,也可能在启动使用中出现此问题。可以查看Solr.log和Tomcat的logs/catalina.out日志信息获得错误信息查找错误原因。
在使用IK分词器的时候再分词前需要将分析字典加载到内存,如果内存过小就会导致内存溢出问题。在生产环境中可以根据实际情况监测JVM的使用情况进行调整JVM的内存大小。
文章来源:http://blog.csdn.net/motui/article/details/53537592