配置dataimportehandler

来源:互联网 发布:淘宝二手书可靠吗 编辑:程序博客网 时间:2024/06/08 19:21

通过配置dataimporthandler, 我们可以让solr自动从数据库中读取记录。

1. 拷贝两个文件solr-dataimporthandler-4.5.1.jar和solr-dataimporthandler-extras-4.5.1.jar到/var/lib/tomcat6/webapps/solr/WEB-INF/lib目录中。这两个文件在下载的solr zip包里。

2. 安装mysql jdbc driver.  
    # yum install -y mysql-connector-java
    # cp /usr/share/java/mysql-connector-java.jar /var/lib/tomcat6/webapps/solr/WEB-INF/lib

3. 修改 solrconfig.xml. 这个文件在 /opt/solr-tomcat/solr/<core_name>/conf目录中,增加下面几行  
  <requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
    <lst name="defaults">
       <str name="config">mysql-data-config.xml</str>
    </lst>
  </requestHandler>

4. 增加mysql-data-config.xml文件,内容像这个格式:
<dataConfig>
<dataSource driver="com.mysql.jdbc.Driver" url="jdbc:mysql://115.29.228.170:3306/medidoctors" user="medidoctor" password="medidoctor" />
    <document>
        <entity name="medi_doctors" query="select * from medi_doctors">
            <field column="Medi_ID" name="Medi_ID" />
            <field column="Medi_DocName" name="Medi_DocName" />
            <field column="Medi_DocDep" name="Medi_DocDep" />
            <field column="Medi_DocHospital" name="Medi_DocHospital" />
            <field column="Medi_HosAddress" name="Medi_HosAddress" />
            <field column="Medi_DocWorkTime" name="Medi_DocWorkTime" />
            <field column="Medi_HosTel" name="Medi_HosTel" />
            <field column="Medi_DocGender" name="Medi_DocGender" />
            <field column="Medi_DocInfo" name="Medi_DocInfo" />
            <field column="Medi_HosRoute" name="Medi_HosRoute" />
        </entity>
    </document>
</dataConfig>

5. 在core/DataImport页面里试着import, 看/var/log/solr/solr.log是否有错误。 

0 0
原创粉丝点击