solr4从mysql数据库中导入数据

实际项目中,我们需要把已存在于数据库中的数据导入到solr索引库中,solr给我们提供了一个非常简便的方式DIH,下面我们以mysql数据为例。

1、进入你的core(如collection1),新建一个目录lib。

2、拷贝mysql-connector-java-5.1.14.jar到新建的lib目录中。

3、从solr的解压文件目录中找到“E:\solrbase\example-DIH\solr\db\conf”下的db-data-config.xml文件到你的core(如collection1)conf目录下,并更名为mysql-data-config.xml。

4、用编辑器打开data-config.xml的文件,清除里面的所有代码,复制以下代码:(注意以下中文注释在实际中应该删除,因为配置文件中不支持中文注释)

<dataConfig>
<!--根据自己的数据库情况进行修改--> 
<dataSource type="JdbcDataSource" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://127.0.0.1:3306/database" user="root" password="root"/><document>
    <!-- name:自定义,但最好有意义;query:纯sql语句,此处查询用户表中的所有数据-->         
    <entity name="user" query="select * from user"> 
          <field column="id" name="id" />
          <!-- column:对应sql语句中的id,sql语句中如果你把它改成别名,此处填写别名; name:对应shema.xml配置文件中的字段id -->
         <field column="name" name="name" />
         <field column="password" name="password" />
     </entity>
 </document>
</dataConfig>

5、导入数据

打开http://localhost:8080/solr,界面如下:

solr4从mysql数据库中导入数据_第1张图片

从下拉列表中选择collection1,再点击Dataimport连接,显示如下界面:

solr4从mysql数据库中导入数据_第2张图片

勾选Commit、Optimize,下拉选择entity为user,点击Execute按钮,开始执行导入操作。

 

以上只是最简单的业务逻辑,复杂的业务逻辑需要<entity>嵌套

 

你可能感兴趣的:(mysql)