我是小明,小明的小,小明的明。
官网地址:https://lucene.apache.org/solr/downloads.html
注意事项:
1、Apache Solr™8.0.0已于2019年3月14日发布。
2、Solr8最低支持的Java版本是Java8,但由于官方在升级日志中声明:
ALPN is not supported in Java 8 or lower version therefore when a node started in Java 8 or a lower version with SSL enabled, it will send and can only be able to handle HTTP/1.1 requests. In case of using SSL Java 9 or latter versions are recommended.
3、Solr8要求tomcat8及以上的部署环境
4、下文中介绍的solrdata——(Tomcat中部署的solr项目名称)、solr_home——(solr数据存贮以及各项配置地址名称)
5、本文配置版本号:solr-8.7.0、apache-tomcat-8.5.37
话不多说开始干饭:
端上了我的饭盆、觉醒吧干饭之魂、我真的好想、321敲、终于等到了饭点、干饭人干饭时间、第一个冲向饭店、见饭不干不是人、干饱了才有精神、老板 还没点到、再来一盆。。。。。。
一、创建tomcat部署文件solrdata
1、把solr-8.7.0目录下的server/solr-webapp/webapps放置到tomcat/webapp的目录下,重命名为solrdata。如下图
![]() |
![]() |
2、拷贝jar文件
2.1、将solr-8.7.0\server\lib\ext下的jar包拷贝到tomcat里的webapps\solrdata\WEB-INF\lib下
![]() |
2.2、将solr-8.7.0\server\lib下 metrics开头的5个jar包也拷贝到tomcat里的webapps\solrdata\WEB-INF\lib下
![]() |
2.3、将solr-8.7.0\dist下 一下2个jar包也拷贝到tomcat里的webapps\solrdata\WEB-INF\lib下
|
2.4将mysql-connector-java-5.1.26-bin.jar包也拷贝到tomcat里的webapps\solrdata\WEB-INF\lib下(这个用来连接mysql 数据库,导入数据库数据时使用)
3、在tomcat里的webapps\solrdata\WEB-INF下创建classes文件夹,将solr/server/resources下的jetty-logging.properties、log4j2.xml以及log4j2-console.xml拷贝到新建的classes文件夹下,如图:
![]() |
![]() |
4、修改webapps\solrdata\WEB-INF\web.xml里的solr\home路径,其中value的值为你创建的solrhome的绝对路径(标签<env-entry>中为添加值,在<welcome-file-list>标签后面追加)。
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<!-- 此处需要将D:/solr-home 修改为你自己的路径 -->
<env-entry-value>D:/solr_home</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
5、web.xml里这段内容是是打开的,将其注释掉(目的是防止tomcat 403问题):
<!-- Get rid of error message -->
<security-constraint>
<web-resource-collection>
<web-resource-name>Disable TRACE</web-resource-name>
<url-pattern>/</url-pattern>
<http-method>TRACE</http-method>
</web-resource-collection>
<auth-constraint/>
</security-constraint>
<security-constraint>
<web-resource-collection>
<web-resource-name>Enable everything but TRACE</web-resource-name>
<url-pattern>/</url-pattern>
<http-method-omission>TRACE</http-method-omission>
</web-resource-collection>
</security-constraint>
6、更改log4j日志路径,打开apache-tomcat-8.5.60\webapps\solrdata\WEB-INF\classes\log4j2.xml文件,将复制过来的log4j文件里的所有${sys:solr.log.dir}修改为自己的指定的真实路径,更改如下
<RollingRandomAccessFile
name="MainLogFile"
fileName="D:/solr_home/solr.log"
filePattern="D:/solr_home/solr.log.%i" >
<PatternLayout>
<Pattern>
%maxLen{%d{yyyy-MM-dd HH:mm:ss.SSS} %-5p (%t) [%X{collection} %X{shard} %X{replica} %X{core}] %c{1.} %m%notEmpty{ =>%ex{short}}}{10240}%n
</Pattern>
</PatternLayout>
<Policies>
<OnStartupTriggeringPolicy />
<SizeBasedTriggeringPolicy size="32 MB"/>
</Policies>
<DefaultRolloverStrategy max="10"/>
</RollingRandomAccessFile>
<RollingRandomAccessFile
name="SlowLogFile"
fileName="D:/solr_home/solr_slow_requests.log"
filePattern="D:/solr_home/solr_slow_requests.log.%i" >
<PatternLayout>
<Pattern>
%maxLen{%d{yyyy-MM-dd HH:mm:ss.SSS} %-5p (%t) [%X{collection} %X{shard} %X{replica} %X{core}] %c{1.} %m%notEmpty{ =>%ex{short}}}{10240}%n
</Pattern>
</PatternLayout>
<Policies>
<OnStartupTriggeringPolicy />
<SizeBasedTriggeringPolicy size="32 MB"/>
</Policies>
<DefaultRolloverStrategy max="10"/>
</RollingRandomAccessFile>
二、创建solr_home文件
1、在磁盘根目录创建solrhome文件夹,把solr-8.7.0 里面的solr文件夹下的内容放入solrhome
![]() |
![]() |
2、创建索引库
2.1、创建new_core(索引库)
![]() |
2.2、把solr-8.7.0\example\example-DIH\solr\solr位置的内容拷进new_core目录下,再创建个data空文件夹
![]() |
启动tomcat,访问 http://hostname:8080/solr/index.html验证是否配置成功。