Solr-2

Posted 健哥说编程

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Solr-2相关的知识,希望对你有一定的参考价值。


1、使用Solr查询mysql中的数据

1、导入mysql的驱动

mysqlmysql-connector-java-5.1.47.jar驱动放到

D:\programfiles\solr-7.5.0\server\solr-webapp\webapp\WEB-INF\lib

目录下。

 

solr-7.5.0\dist目录下找到solr-dataimporthandler-7.5.0.jar文件,也放到上述相同的目录下。

 

 

2、添加配置文件

solr-7.5.0\server\solr\core1\conf目录下创建一个配置文件,命名为data-config.xml文件。其中core1为之前创建的core名称。

配置文件如下:

<dataConfig> 

<dataSource name="source1" type="JdbcDataSource"

driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/sso?characterEncoding=UTF-8&useSSL=false"

user="root" password="1234"/>  

   <document>  

       <entity name="person"  query="select id,name,sex,age,addr from person"  dataSource="source1">  

           <field column="id" name="id" />  

           <field column="name" name="name" />  

          <field column="addr" name="addr" />  

<field column="sex" name="sex" />  

<field column="age" name="age" />  

         </entity>  

   </document>  

</dataConfig>

 

3、配置添加请求配置

    修改配置文件:solr-7.5.0\server\solr\core1\conf\solrconfig.xml。添加以下内容。其中core1为之前创建的core名称。

<!--配置导入mysql的数据-->

  <requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">

<lst name="defaults">

<str name="config">data-config.xml</str>

</lst>

  </requestHandler>

 

 

4、配置添加新的字段

solr-7.5.0\server\solr\core1\conf\managed-schema文件中添加以下内容:

 

<field name="name" type="string" indexed="true" stored="true"/>

<field name="addr" type="string" indexed="true" stored="true"/>

<field name="sex" type="string" indexed="true" stored="true"/>

<field name="age" type="string" indexed="true" stored="true"/>

 

因为已经有了id所以,id就不用配置了。

 

现在重新启动solr使用命令:

D:\>solr restart -p 8983

Stopping Solr process 5760 running on port 8983

 

等待 0 秒,按一个键继续 ...

INFO  - 2018-09-27 21:58:18.225; org.apache.solr.util.configuration.SSLCredentia

lProviderFactory; Processing SSL Credential Provider chain: env;sysprop

Waiting up to 30 to see Solr running on port 8983

Started Solr server on port 8983. Happy searching!

 

 

5、现在查看core1

现在查看core1已经有一个/dataimport的导入:

Solr-2

 

 

 

查看基本信息:

 

Solr-2

6、点查询和执行会显示所有数据

 

 

Solr-2

 

显示的结果:

 

Solr-2

 

7、添加对后续追加到mysql中的数据

在查询出上面的结果以后,后续又向mysql中添加n多数据,则查询无果。此时必须要重新执行一个导入数据才可以查询到新的数据:

 

然后再点查询:

 

可见,数据从刚才的2条,变成了5条。

 

 

 

注意:上面的导入其实的是全量导入数据。即会删除之前的数据然后重新导入所有的数据。


以上是关于Solr-2的主要内容,如果未能解决你的问题,请参考以下文章