longpan 发表于 2017-12-19 15:34:50

Solr 创建core 从MySql数据库中导入数据

  

  一、创建数据表和数据
  在MySql数据中创建mysolrInfo表,
  创建字段
  id 主键,自动增加
  pname :姓名
  age :年龄
  addtime :增加时间

  增加几条数据


    二、创建core
  当Solr的服务器在独立模式下启动的配置称为核心,当它在SolrCloud模式启动的配置称为集合。
  方式一、命令
  首先启动solr:  solr start
  创建core:  solr create -c myfirst
  如下图:

  用命令导入索引数据
  把目录下D:\work\Solr\solr-6.6.0\example\exampledocs的xml数据 导入
  输入:java-Dauto=yes -Dc=myfirst -jar post.jar ..\example\exampledocs\*.xml

  方式2、用管理界面
  首先进入到solr_home文件夹(D:\work\Solr\solr_home),创建一个文件夹(first_core)用于存放新建的core, 然后进入到solr-6.6.0\server\solr\configsets\sample_techproducts_configs路径下,
  将conf文件夹拷贝到刚刚创建first_core文件夹中

  启动tomcat运行solr,浏览器中输入http://127.0.0.1:8080/solr/index.html,点击左侧的Core Admin -> Add Core
  在name和instanceDire下都输入刚刚创建的名称: first_core,其余值默认即可,点击Add Core即可创建成功



    三、修改相关配置文件

      1、配置solrconfig.xml
  solrconfig.xml文件与managed-shema文件是经常要修改的文件。位于创建的core目录里面的conf文件夹里。如下图:
  
  在solrconfig.xml文件的后面配置如下信息:
  

<!--引入DataImportHandler类的jar-->  

  
<requestHandler name="/dataimport">
  
<lst name="defaults">
  
<str name="config">data-config.xml</str>
  
</lst>
  
</requestHandler>
  

  注意:需要确认文件中不存在其他的dataimport,如果存在直接替换即可

     2、配置data-config.xml
  在同级目录下创建data-config.xml文件,然后配置数据库相关属性
  

<?xml version="1.0" encoding="UTF-8"?>  
<dataConfig>
  
<dataSource type="JdbcDataSource" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://127.0.0.1:3306/solr_db" user="root" password="shaoks" batchSize="-1" />
  
  <document>

  
<entity name="mycore_test" query="select>  
<!--column的id是数据库的id,name的id是managed_schema里面的id,id是必须,并且唯一的-->
  
<field column="id" name="id" />
  
<!--column的pname是数据库的pname字段,age是managed_schema里面的age,下面配置同理-->
  
<field column="pname" name="name" />
  
<field column="age" name="age" />
  
<field column="addtime" name="addtime" />
  
</entity>
  
</document>
  
</dataConfig>
  


     3,配置managed-schema.xml
  下面的字段要和上面的data-config.xml里面字段对应起来
  

<schema name="example" version="1.6">  

  
。。。
  

  

<field name="id" type="int" indexed="true" stored="false"/>  
<field name="pname" type="string" indexed="true" stored="true"/>
  
<field name="age" type="string" indexed="true" stored="true"/>
  
<field name="addtime" type="date" indexed="true" stored="true"/>
  
<uniqueKey>id</uniqueKey>
  
</schema>
  

  网上很多教程说到schema.xml,这个文件是solr之前的版本中用到的,6.6版本是不需要的,直接修改上面的文件就可以。


     4,拷贝jar
  拷贝solr-6.6.0\dist路径下的solr-dataimporthandler-6.6.0.jar,solr-dataimporthandler-extras-6.6.0.jar 到D:\work\tomcat\apache-tomcat-9.0.0.M26\webapps\solr\WEB-INF\lib目录下
  同时拷贝mysql-connector-java-5.1.6-bin.jar链接jar到该目录下mysql-connector-java-5.1.6-bin.jar可从网上下载:http://www.java2s.com/Code/Jar/m/Downloadmysqlconnectorjava516binjar.htm

  下载解压后拷贝到指定路径
  不需要修改任何配置文件即可,继续下面的步骤
  5、重启tomcat
  在浏览器运行 http://127.0.0.1:8080/solr/index.html

  执行导入

  查询

  导入成功
页: [1]
查看完整版本: Solr 创建core 从MySql数据库中导入数据