下载
solr官方下载地址:http://lucene.apache.org/solr/
使用
启动 solr dir/bin/solr.cmd start
停止 solr dir/bin/solr.cmd stop -all
访问控制台 http://localhost:8983/solr/
创建core solr create -c mycore -d basic_configs
solr-6.4.2serversolrjcgconfsolrconfig.xml
在solrconfig.xml中添加如下内容:
<requestHandler name="/dataimport" class="solr.DataImportHandler"> <lst name="defaults"> <str name="config">db-data-config.xml</str> </lst> </requestHandler>
添加
<lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-dataimporthandler-.*.jar" />
solr-6.4.2serversolrjcgconfdb-data-config.xml
db-data-config.xml内容如下:
<dataConfig> <dataSource driver="oracle.jdbc.driver.OracleDriver" url="jdbc:oracle:thin:@127.0.0.1:1521:orcl" user="user1" password="abc" /> <document> <entity name="topic" pk="id" query="select field1 as id,field2,field3,field4 from table1"> <field column="id" name="id" /> <field column="field2" name="field2" /> <field column="field3" name="field3" /> <field name="field4" column="field4" /> </entity> </document> </dataConfig>
solr-6.4.2serversolrjcgconfmanaged-schema
managed-schema添加如下内容:
<field name="id" type="string" indexed="true" required="true" stored="true"/> <field name="field2" type="string" indexed="true" stored="true"/> <field name="field3" type="string" indexed="true" stored="true"/> <field name="field4" type="string" indexed="true" stored="true"/>
在solr的控制台生成索引 Dataimport
在solr的控制台查询 Query
困扰了很久,检索完了,查不出来记录,一直报错,报错内容:org.apache.solr.common.SolrException: Document is missing mandatory uniqueKey field: id
我是把查询sql,强制把主键改成id,可以了。这个映射关系还是没有捋顺,回头慢慢捋
这个错误的日志可以在solr-6.4.2serverlogs目录下看到
路漫漫,要整理研究的内容还不少,这个solr很折磨人,还是我现在学习能力已经严重退化了。。。
待完善。。。