Solr 配置连接数据库

前面我们将solr安装并创建了core同时也配置可IK分词器,接下来我们通过配置连接Mysql数据库并把数据导入到solr(使用ik分词器)。

1、配置managed-schema文件 Request Handlers如下:

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

2、创建data-config.xml文件并配置:

<?xml version="1.0" encoding="UTF-8" ?>
<dataConfig>
    <dataSource type="JdbcDataSource"
                driver="com.mysql.jdbc.Driver"
                url="jdbc:mysql://localhost:3306/qnm"
                user="root"
                password="shi11111.+" />
    <document>
        <entity name="qnm_item" query="select * from qnm_item">
            <field column="id" name="id" />
            <field column="item_name" name="itemName" />
        </entity>
    </document>
</dataConfig>

data-config.xml文件的存放位置自定义,别忘记修改managed-schema文件中对应的路径;

3、重新启动solr服务,页面会显示如下错误:

解决办法:原因是缺少名称为DataImportHandler 的class,而class DataImportHandler 在solr-dataimporthandler-x.x.x.jar中,solr-dataimporthandler-x.x.x.jar的位置是在sole的dist目录下,所以我们需要引入solr-dataimporthandler-x.x.x.jar包,添加配置如下(solrconfig.xml):

<lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-dataimporthandler-\d.*\.jar" />

效果如图:

再次重新启动solr服务:

4、选择Entity为前面配置的qnm_item,点击执行按钮,进行数据导入如下图所示:

 数据并没有导入成功!点击Logging查看日志:

很明显连接数据库出现问题,原因是没有导入连接数据库的jar文件,用步骤三的方法导入数据库连接jar(如果dist文件中没有该jar文件需要自行添加):

重启!再次重复步骤4进行数据导入:

导入成功!

5、查看导入的数据是否正确:

数据正确,我这里没有配置filed标签,所以之后id属性成功导入!

猜你喜欢

转载自www.cnblogs.com/shiguotao-com/p/10360739.html