Solr数据库导入

举报
Smy1121 发表于 2019/06/22 19:08:55 2019/06/22
【摘要】 以mysql为例,将数据导入solr。

Solr数据库导入:

以mysql为例,将数据导入solr。


1.先在mysql的storm数据库中建一个表receivelog

image.png


2.向receivelog表中插入测试数据

image.png


3.打开solrcore 中conf目录下的solrconfig.xml配置文件,添加如下内容。

<!—name名称可以随意取-->

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

        <lst name="defaults">

<!—data-config.xml 配置文件名称跟后面新建文件名一致-->

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

        </lst>

</requestHandler>



4.在相同目录下新建一个data-config.xml文件,添加如下内容。

driver:mysql去掉

url:mysql数据库url地址

user:用户名

password:密码

query:从数据库中查询需要的字段导入solr中


<?xml version="1.0" encoding="UTF-8" ?>

<dataConfig>

    <dataSource type="JdbcDataSource"

              driver="com.mysql.jdbc.Driver"

              url="jdbc:mysql://192.168.8.200/storm"

              user="root"

              password="111111" />

    <document>

        <entity name="receivelog" 

            query="select id, loc, sex, pt from receivelog >

        </entity>

    </document>

</dataConfig>


5.找到Solr下的dist目录,将solr-dataimporthandler-4.10.0.jar和solr-dataimporthandler-extras-4.10.0.jar两个jar包拷贝到tomcat中的solr项目中。


6.下载mysql的jdbc jar包并拷贝到tomcat中的solr项目中。


7.进入solrcore的conf目录下,打开schema.xml核心配置文件,增加数据库字段配置。

<field name="id"  type="int" indexed="true" stored="true"  multiValued="false" required="true"/>

<field name="loc"  type="int" indexed="true" stored="true"/>

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

<field name="pt"  type="int" indexed="true" stored="true"/>


8. 打开solr web管理界面操作mysql数据导入。

image.png


测试导入数据。

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。