参考博客:https://blog.csdn.net/u013160017/article/details/81037279
下载地址:https://lucene.apache.org/solr/mirrors-solr-latest-redir.html
一、安装步骤如下:
1、解压 unzip solr-7.7.1.zip 2、运行 ./bin/solr start -force #默认端口8983 3、访问solr #http://192.168.56.130:8983/solr/#/
二、添加自己的core
1、创建核心配置 在./solr-7.7.1/server/solr目录下创建new_core目录(名字自己定) 2、添加核心的配置文件 复制./solr-7.7.1/server/solr/configsets/_default下的conf文件夹到./solr-7.7.1/server/solr/new_core/下 3、在页面添加new_core 添加成功后/new_core/下会有core.properties文件、data目录
三、数据库数据导入Solr
1、添加jar包 复制数据库连接jar包到安装目录server/solr-webapp/webapp/WEB-INF/lib 复制dist目录下的solr-dataimporthandler-*.jar到刚才的目录下
2、创建data-config.xml文件 在./solr-7.7.1/server/solr/new_core/conf目录下创建一个文件data-config.xml,与solrconfig.xml同级
3、修改solrconfig.xml文件 修改./solr-7.7.1/server/solr/new_core/conf/solrconfig.xml文件 a)在<requestHandler name="/select" class="solr.SearchHandler">上放增加以下这段代码。 <requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler"> <lst name="defaults"> <str name="config">data-config.xml</str> </lst> </requestHandler> b)添加jar包 <!-- mysql导入增加的包开始-->? <lib dir="${solr.install.dir:../../../..}/dist/" regex="mysql-connector-java-.*.jar" />? <lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-dataimporthandler-.*.jar" />? <!-- mysql导入增加的包结束-->
4、修改data-config.xml文件 打开data-config.xml文件,配置相关的数据库属性,即我们要导入那张表的哪些字段,内容如下: <?xml version="1.0" encoding="UTF-8"?> <dataConfig> <dataSource name="source1" type="JdbcDataSource" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://192.168.56.130:3306/test" user="root" password="yang156122" batchSize="-1" /> <document> <entity name="test" dataSource="source1" query="select user_name,age from test"> <field column='age' name='age' /> <field column='user_name' name='user_name' /> </entity> </document> </dataConfig> 5、修改managed-schema文件,找到field字段,添加下面两个属性 <field name="user_name" type="string" indexed="true" stored="true" /> <field name="age" type="string" indexed="true" stored="true" /> 6、关闭然后重启 ./bin/solr stop -all ./bin/solr start -force
FAQ
1、当启动时出现下面的错误时,请打开solr.in.sh文件,将 SOLR_ULIMIT_CHECKS值改为false ,即 SOLR_ULIMIT_CHECKS=false
*** [WARN] *** Your open file limit is currently 1024. It should be set to 65000 to avoid operational disruption. If you no longer wish to see this warning, set SOLR_ULIMIT_CHECKS to false in your profile or solr.in.sh *** [WARN] *** Your Max Processes Limit is currently 15686. It should be set to 65000 to avoid operational disruption. If you no longer wish to see this warning, set SOLR_ULIMIT_CHECKS to false in your profile or solr.in.sh WARNING: Starting Solr as the root user is a security risk and not considered best practice. Exiting. Please consult the Reference Guide. To override this check, start with argument '-force'