`
该用户名已经存在
  • 浏览: 308529 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Solr与Mysql简单集成

阅读更多
Solr与Mysql数据库的集成,实现全量索引、增量索引的创建。
基本原理很简单:在Solr项目中注册solr的DataImportHandler并配置Mysql数据源以及数据查询sql语句。当我们通过Solr后台控制页面或者直接访问某个地址(后面给出),Solr就会调用DataImportHandler,连接数据库,根据sql语句查询数据,创建索引。

示例solr版本:solr4.3.1
约定Solr的安装目录,如E:\environment\solr-4.3.1为solr-home。


1. 拷贝jar包
将DataImportHandler所在的jar包和mysql的数据库驱动包Copy到solr-home/dist目录下。默认情况下该目录下已存在DataImportHandler所需的两个jar包。该Solr版本对应的jar包名字是:solr-dataimporthandler-4.3.1.jar、solr-dataimporthandler-extras-4.3.1.jar

2. 修改solr-home\example\solr\collection1\conf\solrconfig.xml文件
a. 增加所需jar包引用配置:
<lib dir="../../../dist/" regex="solr-dataimporthandler-.*\.jar" />
<lib dir="../../../dist/" regex="mysql-connector-java-.*\.jar" />


b. 增加resultHandler配置
<requestHandler name="/dataimport"   
        class="org.apache.solr.handler.dataimport.DataImportHandler">      
		<lst name="defaults">      
			<str name="config">data-config.xml</str>      
		</lst>      
</requestHandler>


3.  在solrconfig.xml的同级目录下创建data-config.xml文件,配置数据库连接和Solr与mysql数据的对应关系和查询语句。
<dataConfig>  
  <dataSource type="JdbcDataSource" driver="com.mysql.jdbc.Driver"   
   url="jdbc:mysql://127.0.0.1/dbname" user="root" password="root"/>  
   <document name="search_object"> 
      <entity name="talent" 
	query="select id, gender, qq, msn, anualSalary, updateTime, addUserId
              from talent">  
        <field column="anualSalary" name="salary"/>  
        <field column="addUserId" name="userId"/>  
   
		<!--Talent Names-->
        <entity name="talent_name" query="select value from talentname where talentId='${talent.id}'">  
          <field column="value" name="name"/>  
        </entity>  
      </entity>  
   </document>  
</dataConfig> 


4. 重启Solr。
批量导入(full-import):
http://<host>:<port>/solr/dataimport?command=full-import&commit=y
   
增量导入(delta-import):
http://<host>:<port>/solr/dataimport?command=delta-import&commit=y
   
导入状态查询(status):
http://<host>:<port>/solr/dataimport
   
重新装载配置文件(reload-config):
http://<host>:<port>/solr/dataimport?command=reload-config
   
终止导入(abort):
http://<host>:<port>/solr/dataimport?command=abort
分享到:
评论

相关推荐

    solr6.0+mysql集成配置

    将 Solr 集成与 MySQL,可以实现对 MySQL 数据库中的数据进行实时索引和快速检索,从而提升数据查询效率。下面我们将详细介绍如何进行 Solr 6.0 与 MySQL 的集成配置。 **1. 安装与配置 Solr** 首先,你需要下载并...

    图解Solr6.6.0安装与MySQL配置

    #### 三、Solr与MySQL集成 **3.1 导入MySQL驱动包** - 将MySQL的JDBC驱动程序和Solr Data Import Handler (DIH) 相关的JAR文件导入到`mycore/lib`目录中。 - MySQL驱动程序可以从官方Maven仓库下载:...

    solr6.0+mysql+IK分词集成

    2. **JDBC连接**:Solr可以通过JDBC数据导入处理器与MySQL建立连接,需要在Solr的配置中添加JDBC驱动,并配置相应的数据源连接参数。 3. **数据同步**:通过Solr的DIH定期或实时从MySQL中抽取数据,更新到Solr索引...

    图解Solr5.3.1与MySQL配置【原创】

    #### 一、Solr与MySQL集成概述 在本文中,我们将详细介绍如何配置Solr 5.3.1与MySQL数据库的集成,以便实现高效的数据搜索功能。Solr是一款高性能、可伸缩的企业级搜索引擎,它是Apache Lucene的分布式应用实例,...

    solr-5.5.4与spring 集成项目示例2

    solr-5.5.4与spring集成,增加了账号密码身份验证,增加了zk中文分词,增加了增量导入,mysql数据同步,增加了git链接地址

    跟益达学Solr5之增量索引MySQL数据库表数据

    总的来说,通过学习这个主题,我们可以掌握如何利用Solr 5和MySQL之间的集成,实现高效的数据索引,这对于大数据环境下的实时搜索应用至关重要。理解并熟练掌握这些知识,将有助于提升我们的IT技能,特别是在大数据...

    跟益达学Solr5之从MySQL数据库导入数据并索引

    2. **Solr与MySQL集成** - **DataImportHandler (DIH)**:Solr提供了一个名为DIH的组件,用于从外部数据源,如MySQL,导入数据。DIH支持增量更新和全量导入,确保数据库中的数据变化能实时反映到Solr索引中。 - **...

    solr7.4配置tomcat8.5,可连接mysql8.0.11,集成ik分词器

    与Tomcat 8.5的集成使得Solr能够作为一个Web应用程序在Java Servlet容器中运行。本配置教程将详细介绍如何在Tomcat 8.5上部署Solr 7.4,并连接到MySQL 8.0.11数据库,同时集成IK分词器,提升中文搜索体验。 首先,...

    solr与javaWeb开发

    总结,Solr与JavaWeb开发的结合使得开发者能够轻松集成强大的全文搜索功能,而分词器的使用则进一步优化了对中文内容的处理。通过上述步骤,开发者可以搭建一个基础的Solr环境,并实现从数据库导入数据以及进行全文...

    solr7.4数据库导入Demo(mysql数据库)

    本Demo将展示如何使用Solr 7.4与MySQL数据库集成,实现数据导入,并结合IK分词器提升中文搜索体验。 首先,你需要下载并安装Solr 7.4.0。解压压缩包`solr-7.4.0`,这是一个包含Solr服务器和配置文件的完整包。在`...

    solr4.10.0部署文件全集(包括分词器、mysql的jar包)

    本压缩包包含Solr 4.10.0的完整部署文件,以及额外的分词器和MySQL的JAR包,这对于那些需要与MySQL数据库集成并处理中文内容的项目来说非常实用。 1. **Solr 4.10.0核心组件**: - Solr 4.10.0包含了服务器端的...

    solr-8.5.2.zip

    2. **MySQL 集成**:Solr 可以与多种数据库进行集成,包括 MySQL。在这个配置中,已经完成了 Solr 与 MySQL 的连接配置,允许用户将数据库中的数据导入到 Solr 中,进行全文检索。这通常通过 DataImportHandler (DIH...

    Solr-ik分词

    Solr是中国大文本检索平台Apache Lucene的一个...同时,通过MySQL-connector-java驱动,Solr可以与MySQL数据库无缝集成,实现数据的检索和索引。了解并熟练运用这些知识点,将有助于提升你的Solr应用的性能和用户体验。

    Hbase同步数据到Solr的方案

    这一过程与MySQL的主从复制机制类似,每个Region Server都有自己的WAL Log,并且在ZooKeeper中维护同步位置。 操作时序图大致如下: 1. 客户端(Client)对HBase执行Put或Delete操作。 2. 操作被记录在本地Region ...

    solr7.5手动倒mysql库需要用到的jar.zip 两个jar都在压缩包里

    总的来说,这两个jar文件是Solr与MySQL集成的重要工具,通过它们,你可以便捷地将数据库中的数据导入到Solr索引中,从而实现快速高效的搜索功能。在实际应用中,需要结合Solr的其他特性和配置进行细致的调整,以满足...

    solr+tomcat项目

    为了进一步集成,你还可以通过API(如HTTP RESTful API或Java API)与Solr交互,将应用程序的数据输入到索引中,或者从索引中检索结果。Solr支持多种编程语言的客户端库,方便开发者实现这一目的。 总之,Solr+...

    solr4.9.0.zip

    11. **XML/JSON API**:Solr 提供了基于HTTP的XML和JSON接口,方便与其他应用程序集成。 12. **强大的文档处理**:Solr可以处理各种格式的文档,如PDF、Word、HTML等,并从中提取文本进行索引。 在“solr-4.9.0”...

    传智播客32期solr所用的数据库.txt

    - 解释如何将Solr与MySQL等数据库结合使用。 - 讨论数据同步策略,确保索引数据与数据库中数据的一致性。 - 分析不同场景下Solr与数据库交互的最佳实践。 5. **高级特性**: - 动态字段类型:了解如何定义动态...

Global site tag (gtag.js) - Google Analytics