Solr7.7安装,链接数据库并导入数据,初级导入数据

一、链接SqlServer数据库,上传文件 mssql-jdbc-7.0.0.jre8.jar 到根目录soft文件夹下

cp -a /soft/mssql-jdbc-7.0.0.jre8.jar /soft/solr-7.7.0/server/solr-webapp/webapp/WEB-INF/lib/

二、创建Solr的核心 core0

  1. 在/soft/solr-7.7.0/server/solr目录下创建core0目录(自己起名字)
    mkdir /soft/solr-7.7.0/server/solr/core0
  2. 复制配置文件,复制
    cp -a /soft/solr-7.7.0/server/solr/configsets/_default/* /soft/solr-7.7.0/server/solr/core0/
  3. 添加core

 

 

 三、复制/soft/solr-7.7.0/dist/solr-dataimporthandler-7.7.0.jar

cp -a /soft/solr-7.7.0/dist/solr-dataimporthandler-7.7.0.jar  /soft/solr-7.7.0/server/solr-webapp/webapp/WEB-INF/lib/

 

添加导入数据的配置文件,配置写sql语句的文件,编辑solrconfig.xml文件,大概在667行的位置

Linux上的路径 /soft/solr-7.7.0/server/solr/core0/conf/solrconfig.xml,可以用vim进行编辑,但是最好下载到本地进行编辑。

 

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

四、本地新建data-config.xml,然后拖拽到Linux上新建的db文件夹下面,新建目录如下

mkdir /soft/solr-7.7.0/server/solr/core0/conf/db/

data-config.xml文件内容如下:
<dataConfig>
<dataSource driver="com.microsoft.sqlserver.jdbc.SQLServerDriver" url="jdbc:sqlserver://192.168.0.20;DatabaseName=test" user="sa" password="123456"/>
<document name="Info">

<entity name="Projects" pk="id" transformer="ClobTransformer"
query="SELECT id,name,adddate FROM dbo.test"
deltaImportQuery="SELECT id,name,adddate FROM dbo.test where id ='${dataimporter.delta.id}'"
deltaQuery="SELECT id  FROM test where adddate > '${dataimporter.last_index_time}'" >
    <field column="id"            name="id"            />
    <field column="name"        name="name"        />
    <field column="adddate"        name="adddate"        />   
</entity>
</document>
</dataConfig>
 

五、编辑文件 managed-schema ,在/soft/solr-7.7.0/server/solr/core0/conf/目录下,同样还是下载到本地编辑,配置里面的字段类型,包括 int、string、小数、时间、中文拆分词、英文拆分词

  <field name="id" type="string" indexed="true" stored="true" required="true" />
  <field name="name" type="string" default="" indexed="true" stored="true" multiValued="false" />  
  <field name="adddate" type="pdate" indexed="true" stored="true" multiValued="false"/> 

posted @ 2019-03-01 11:21  caleyun  阅读(673)  评论(0编辑  收藏  举报