当前位置:Gxlcms > 数据库问题 > solr6.6教程-从mysql数据库中导入数据(三)

solr6.6教程-从mysql数据库中导入数据(三)

时间:2021-07-01 10:21:17 帮助过:4人阅读

Type:表示这个字段的类型是什么,string是字符串类型,int是整形数据类型,date是时间类型,相当于数据库里面的timestamp

Indexed:是否索引

Stored:是否存储

multiValued:是否多值。在一个域下存储多个值。一个域下存储一个数组。

在managed_schema后面添加如下代码

<!--这里无需定义id,因为managed_schema文件已经在前面开头位置定义了,id是必须,并且唯一的-->
<field name="S_user" type="string" indexed="true"  stored="true" />
<field name="S_text" type="string" indexed="true" stored="true"/>

技术分享

5.编写之前创建的data-config.xml

<dataConfig>
     <dataSource type="JdbcDataSource" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://127.0.0.1:3306/test" user="root" password="123456" batchSize="-1" />
 <document>
           <entity name="mycore_test" query="select id,S_user,S_text from test">
              <!--column的id是数据库的id,name的id是managed_schema里面的id,id是必须,并且唯一的-->
             <field column="id" name="id" />
             <field column="S_user" nam="S_user" />
            <field column="S_text" name="S_text" />
       </entity>
   </document>
 </dataConfig>

  

 

技术分享

dataSource配置数据库信息 

document配置数据库查询语句与managed_schema域的对应关系。目的是,在core导入数据的时候,会先通过该配置信息链接到数据库通过查询语句把数据查询出来,通过数据库字段与managed_schema域关联关系创建索引

 开始导入数据

配置好了前面的信息,就可以在后台导入数据,配置信息需要reload一下core才能生效。如果配置文件出现错误,reload的时候也会有错误信息提示。

技术分享

reload完之后,开始导入

技术分享

  点击Execute开始导入

技术分享

如果数据量大可以勾选,自动刷新

技术分享

如下图建立索引成功。

技术分享

这里有几个需要注意的地方,是我遇到的问题

1.JAVA和MYSQL连接jar包是否匹配,如果不匹配会出现如下的错误,导入失败,即使提示提取成功,也是无法建立索引,因为jar版本不对。

技术分享

同时Tomcat也会有报错信息如下:

技术分享

最终的解决办法就是更换jar 包,我本机的MYSQL版本是

mysql jar包地址

D:\tomcat\webapps\solr\WEB-INF\lib

技术分享

JAVA版本是

技术分享

 现在我们查询下,看是否建立索引成功。

 

 技术分享

 

solr6.6教程-从mysql数据库中导入数据(三)

标签:use   失败   ued   添加   目的   handle   结构   int   多个   

人气教程排行