Solr7.x學習(4)-導入數據

導入配置可參考官網:http://lucene.apache.org/solr/guidehttp://lucene.apache.org/solr/guide/7_7/mysql

一、數據準備(MySQL8.x數據庫)web

DROP TABLE IF EXISTS `dept`;
CREATE TABLE `dept`  (
  `id` int(11) NOT NULL,
  `code` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  `name` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  `remark` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
  `create_time` datetime(0) NULL DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;

INSERT INTO `dept` VALUES (1, '01', '總裁辦', '經營管理公司各項事務', '2019-09-28 21:19:42');
INSERT INTO `dept` VALUES (2, '02', '研發中心', NULL, '2019-09-28 22:02:55');

二、建立field,修改managed-schema文件,添加字段信息sql

  <field name="code" type="string" uninvertible="true" indexed="true" stored="true"/>
  <field name="name" type="text_ik" uninvertible="true" indexed="true" stored="true"/>
  <field name="remark" type="text_ik" uninvertible="true" indexed="true" stored="true"/>
  <field name="createTime" type="pdate" uninvertible="true" indexed="true" stored="true"/>

    也能夠經過url添加,兩種添加方式是等效的,url添加的字段會寫入managed-schema文件中數據庫

三、修改solrconfig.xml文件,添加配置apache

  <requestHandler name="/import" class="org.apache.solr.handler.dataimport.DataImportHandler">
    <lst name="defaults">
      <str name="config">db-config.xml</str>
    </lst>
  </requestHandler>

四、在同目錄建立db-config.xml文件app

<?xml version="1.0" encoding="UTF-8" ?>
<dataConfig>
  <dataSource type="JdbcDataSource" driver="com.mysql.cj.jdbc.Driver"
              url="jdbc:mysql://192.168.114.131:3306/zhi_test?characterEncoding=utf8"
              user="root" password="abc123"/>
  <document>
    <entity name="dept"
            query="select id,code,name,remark,create_time from dept"
            deltaQuery="select id from dept where create_time>'${dataimporter.last_index_time}'"
            deltaImportQuery="select * from dept where id='${dataimporter.delta.id}'">
      <field column="create_time" name="createTime"/>
    </entity>
  </document>
</dataConfig>

五、複製solr-7.7.2\dist目錄下的solr-dataimporthandler-7.7.2.jar和solr-dataimporthandler-extras-7.7.2.jar到solr-7.7.2/server/solr-webapp/webapp/WEB-INF/lib目錄下webapp

六、複製mysql驅動到solr-7.7.2/server/solr-webapp/webapp/WEB-INF/lib目錄下ide

七、開始導入數據ui

    1)全量導入數據。導入了原有的2條記錄url

 

      2)增量導入數據。只導入新增的1條記錄

相關文章
相關標籤/搜索