solr7.1.0学习笔记(11)---Solr连接Mysql数据库

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/weixin_39082031/article/details/79074078

solr连接数据库查询数据库数据需要几步配置:

1、创建一个Core,创建Core的方法之前已经很详细的讲解过了,如果还是不清楚请参考“创建Core”;

2、导入mysql驱动包:

    2.1、下载 mysql 驱动包:

        mysql-connector-java-x.x.x.jar,绝大部分jar包在maven仓库都能找到,mysql驱动包在maven仓库中的下载链接是:http://central.maven.org/maven2/mysql/mysql-connector-java/

    2.2、将 mysql 驱动包导入 solr :

        将下载下来的 mysql-connector-java-x.x.x.jar 拷贝到 solr\server\solr-webapp\webapp\WEB-INF\lib 下;

 3、配置连接信息

    3.1、找到新建的 Core 下的solrconfig.xml文件(solrconfig.xml 文件所在目录是: solr\server\solr\mycore\conf),打开找到第一个requestHandler,大体位置如下图:

        

    在其后添加配置信息:

<requestHandler name="/dataimport"
     class="org.apache.solr.handler.dataimport.DataImportHandler"> 
       <lst name="defaults"> 
          <str name="config">${path}/data-config.xml</str> 
       </lst> 
</requestHandler>

    如下图:

        

    3.2、创建 data-config.xml 文件:

        建议尽量放在当前的 Core 的 conf 文件夹下,虽然可以任意指定。此处是在 solr\server\solr\mycore\conf 下创建了 mysql-db 文件夹作为 mysql 数据库属性文件的文件夹,然后创建 data-config.xml 文件,在文件中写入数据库连接信息dataSource以及数据库表对应的document,示例如下:

<?xml version="1.0" encoding="UTF-8" ?>
<dataConfig>
    <dataSource type="JdbcDataSource"
                driver="com.mysql.jdbc.Driver"
                url="jdbc:mysql://localhost:3306/solr"
                user="root"
                password="root" />
    <document>
        <entity name="person" query="select * from person"
                deltaQuery="select * from person where name > '${dataimporter.last_index_time}'">
            <field column="ID" name="id" />
            <field column="name" name="p_name" />
            <field column="age" name="p_age" />
        </entity>
    </document>
</dataConfig>


    如下图:
        

        entry:对应于数据库中的数据库表,此处为 person 表;

        field:数据库字段,对应于solr的schema.xml中的 field 字段。其中 column 表示数据库字段名,name 表示 field 的 name。

4、导入 solr 以来的库文件:

    将 soft\solr\dist 下的 solr-dataimporthandler-7.1.0.jar 拷贝到 solr\server\solr-webapp\webapp\WEB-INF\lib 下。

    或者,在solrconfig.xml文件中配置 <lib/>,代码如下:

把<lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-dataimporthandler-\d.*\.jar" />
加在<lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-cell-\d.*\.jar" />前面

5、在managed-schema文件中添加对应于数据库字段的field,建议在 solr 可视化界面操作。当然,一定要手动修改 managed-schema 文件也不是不可以,但是每次更改完需要重新加载 Core,或者粗暴一点直接重新启动solr也可以。那么,直接修改 managed-schema 文件的示例如下:

<field name="id" type="string" multiValued="false" indexed="true" required="true" stored="true"/>
<field name="name" type="string" indexed="true" stored="true"/> 
<field name="age" type="pint" indexed="true" stored="true"/>

6、如何在solr中查看数据?

    以上我们做了所有的工作,来实践一下吧!

    6.1、启动solr;

    6.2、直接进入 solr可视化界面:http://localhost:8983/solr ,我们没有更改solr的端口,所以默认的端口是8983,主界面如下图:

        

    6.3、接下来就是导入数据库数据,具体操作见下图:

        

    6.4、查询导入的数据:

        点击左侧菜单栏的 Query 然后直接点击右侧的 Execute Query 就可以看到导入的数据。

猜你喜欢

转载自blog.csdn.net/weixin_39082031/article/details/79074078