当前位置: 首页 > solr, 搜索 > 正文

solr4:从数据库中导入数据建立索引

1 星2 星3 星4 星5 星 (2 次投票, 评分: 5.00, 总分: 5)
Loading ... Loading ...
baidu_share

要建立自己的全文检索,一般都需要从数据库导入数据,在原来配置的基础上,增加导入的功能,这里以mysql为例子:
1、e:\apache-tomcat-7.0.27\solr\conf\solrconfig.xml中增加

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

2、增加e:\apache-tomcat-7.0.27\solr\conf\data-config.xml,内容为数据库的连接信息

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?xml version="1.0" encoding="utf-8"?>  
<dataConfig>
 <dataSource type="JdbcDataSource" driver="com.mysql.jdbc.Driver"  
   url="jdbc:mysql://localhost:3306/phpcmsv9"  
   user="xq"  
   password="1"/>
   <document name="cms">
      <entity name="view_basicinfo" pk="pk_view_basicinfo_id" query="select a.view_basicinfo_id as id,a.person_code as person_code,a.person_name as person_name,a.dept_name as dept_name,a.org_name as org_name,a.sex as sex from view_basicinfo a">  
          <field column="id" name="id" />  
          <field column="person_code" name="person_code" />  
          <field column="person_name" name="person_name" />
          <field column="dept_name" name="dept_name" />
          <field column="org_name" name="org_name" /> 
          <field column="sex" name="sex" /> 
      </entity>
 
 </document> 
</dataConfig>

job_summary列是一个clob类型的,要用到ClobTransformer,这是1.4以后的版本中才有的
column=”JOB_SUMMARY” clob=”true”中的列名JOB_SUMMARY一定要大写,要不会不起作用

3、e:\apache-tomcat-7.0.27\solr\conf\schema.xml文件中增加相应field配置, 把原有文件中id字段的required=”true”去掉,否则导入的时候,会验证id字段,其实自己在做的时候,如果其他字段没有的话,可以删除

1
2
3
4
5
6
7
8
9
10
  <copyField source="person_code" dest="text"/> 
  <copyField source="person_name" dest="text"/> 
  <copyField source="dept_name" dest="text"/> 
  <copyField source="org_name" dest="text"/> 
  <copyField source="sex" dest="text"/> 
 
  <copyField source="job_code" dest="text"/> 
  <copyField source="job_name" dest="text"/> 
  <copyField source="job_summary" dest="text"/> 
  <copyField source="job_instruction" dest="text"/>

5、将mysql的驱动文件mysql-connector-java-5.1.20.jar添加到solr的war包中(apache-tomcat-7.0.27\solr\WEB-INF\lib\)。
6、重启服务,在浏览器中输入http://localhost:8090/solr/dataimport开始建立索引。并可查看导入状态。

本文固定链接: http://www.chepoo.com/solr4-database-import-create-index.html | IT技术精华网

solr4:从数据库中导入数据建立索引:等您坐沙发呢!

发表评论