Solr导入MySql中的数据
1、参照 http://www.cnblogs.com/luxh/p/5016894.html 部署好solr的环境
2、在solr_home下建立一个core_item目录
- [root@iZ23exixsjaZ solr_home]# pwd
- /luxh/solr/solr_home
- [root@iZ23exixsjaZ solr_home]# mkdir core_item
在core_item目录中建立data目录
- [root@iZ23exixsjaZ core_item]# pwd
- /luxh/solr/solr_home/core_item
- [root@iZ23exixsjaZ core_item]# mkdir data
3、将/luxh/solr/solr-5.3.1/example/example-DIH/solr/db路径下的conf目录拷贝到刚才创建的core_item目录中
- [root@iZ23exixsjaZ data_driven_schema_configs]# pwd
- /luxh/solr/solr-5.3.1/example/example-DIH/solr/db
- [root@iZ23exixsjaZ data_driven_schema_configs]# cp -r conf /luxh/solr/solr_home/core_item
4、在solr管理界面配置添加一个core
5、拷贝相应的jar包到solr项目中
拷贝mysql-connector-java-5.1.37.jar和solr-dataimporthandler-5.3.1.jar到solr项目中
拷贝路径:
- /luxh/solr/apache-tomcat-8.0./webapps/solr/WEB-INF/lib
6、配置solrconfig.xml,加入solr数据导入处理器(其实从solr拷贝过来的文件已经配置好了)
- <requestHandler name="/dataimport" class="solr.DataImportHandler">
- <lst name="defaults">
- <str name="config">db-data-config.xml</str>
- </lst>
- </requestHandler>
7、配置db-data-config.xml,加入连接数据库的信息,按自己的实际字段配置
- <dataConfig>
- <dataSource name="testDB" type="JdbcDataSource" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://127.0.0.1:3306/fashion?rewriteBatchedStatements=true&useUnicode=true&characterEncoding=utf8&autoReconnect=true" user="root" password="root" />
- <document>
- <entity name="item" query="select * from item">
- <field column="Uuid" name="id"/>
- <field column="ShopId" name="ShopId"/>
- <field column="Cat" name="Cat"/>
- <field column="Building" name="Building"/>
- <field column="Floor" name="Floor"/>
- <field column="Position" name="Position"/>
- <field column="Title" name="Title"/>
- <field column="Price" name="Price"/>
- <field column="Color" name="Color"/>
- <field column="Size" name="Size"/>
- <field column="Input_str" name="Input_str"/>
- </entity>
- </document>
- </dataConfig>
column表示数据库中的列;name是solr的schema.xml配置的field的name
8、配置solr的schema.xml,加入一下内容:
- <field name="ShopId" type="int" indexed="false" stored="true"/>
- <field name="Cat" type="text_ansj" indexed="true" stored="true"/>
- <field name="Building" type="text_ansj" indexed="true" stored="true"/>
- <field name="Floor" type="int" indexed="false" stored="true"/>
- <field name="Position" type="text_ansj" indexed="true" stored="true"/>
- <field name="Title" type="text_ansj" indexed="true" stored="true"/>
- <field name="Price" type="float" indexed="true" stored="true"/>
- <field name="Color" type="text_ansj" indexed="true" stored="true"/>
- <field name="Input_str" type="text_ansj" indexed="true" stored="true"/>
- <field name="Size" type="text_ansj" indexed="true" stored="true"/>
- <field name="allwords" type="text_ansj" indexed="true" stored="false" multiValued="true"/>
- <copyField source="Cat" dest="allwords"/>
- <copyField source="Title" dest="allwords"/>
- <copyField source="Color" dest="allwords"/>
- <copyField source="Input_str" dest="allwords"/>
- <copyField source="Size" dest="allwords"/>
9、配置好中文分词器
参照 http://www.cnblogs.com/luxh/p/5017336.html
10、启动tomcat
11、导入数据
12、如果日志中有SolrResourceLoader Can't find (or read) directory to add to classloader: ../../../contrib/extraction/lib等找不到库的警告,
主要是找不到solr安装目录中的solr-5.3.1/contrib和 solr-5.3.1/dist. 则在solrconfig.xml中指定这两个目录的路径即可
- <lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-dataimporthandler-.*\.jar" />
- <lib dir="${solr.install.dir:../../../..}/contrib/extraction/lib" regex=".*\.jar" />
- <lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-cell-\d.*\.jar" />
- <lib dir="${solr.install.dir:../../../..}/contrib/clustering/lib/" regex=".*\.jar" />
- <lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-clustering-\d.*\.jar" />
- <lib dir="${solr.install.dir:../../../..}/contrib/langid/lib/" regex=".*\.jar" />
- <lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-langid-\d.*\.jar" />
- <lib dir="${solr.install.dir:../../../..}/contrib/velocity/lib" regex=".*\.jar" />
- <lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-velocity-\d.*\.jar" />
- 替换为:
- <lib dir="/luxh/solr/solr_home/dist/" regex="solr-dataimporthandler-.*\.jar" />
- <lib dir="/luxh/solr/solr_home/contrib/extraction/lib" regex=".*\.jar" />
- <lib dir="/luxh/solr/solr_home/dist/" regex="solr-cell-\d.*\.jar" />
- <lib dir="/luxh/solr/solr_home/contrib/clustering/lib/" regex=".*\.jar" />
- <lib dir="/luxh/solr/solr_home/dist/" regex="solr-clustering-\d.*\.jar" />
- <lib dir="/luxh/solr/solr_home/contrib/langid/lib/" regex=".*\.jar" />
- <lib dir="/luxh/solr/solr_home/dist/" regex="solr-langid-\d.*\.jar" />
- <lib dir="/luxh/solr/solr_home/contrib/velocity/lib" regex=".*\.jar" />
- <lib dir="/luxh/solr/solr_home/dist/" regex="solr-velocity-\d.*\.jar" />
Solr导入MySql中的数据的更多相关文章
- 【Redis 向Redis中批量导入mysql中的数据(亲自测试)】
转自:https://blog.csdn.net/kenianni/article/details/84910638 有改动,仅供个人学习 问题提出:缓存的冷启动问题 应用系统新版本上线,这时候 re ...
- solr插件导入数据库中的数据
solr插件导入数据库中的数据 1:自定义与数据库对应的域: 1.1. 设置业务系统Field 如果不使用Solr提供的Field可以针对具体的业务需要自定义一套Field. 例如:如下是商品信息Fi ...
- Solr导入MySQL数据之dataimport-handler
Solr不借助手动JSolr编程情况下也可以将Mysql的数据导入到Solr中.实现方式是安装dataimport-Handler从关系数据库将数据导入到索引库. 1.向SolrCore中加入jar包 ...
- 利用Ajax实现数据的同步传输,从mysql中提取数据,通过echarts可视化
如何将mysql数据库中的方式通过echarts可视化呢,以下面这个简单的例子向大家进行演示: 步骤一:mysql的创表和插入数据,当然这些数据也可以是你通过爬虫抓取的. 步骤二: 创 ...
- Vusual C++连接Mysql和从MySql中取出数据的API介绍
.1 mysql_real_connect() 2.1.1 函数原型: MYSQL *mysql_real_connect(MYSQL *mysql, const char *host, const ...
- PHP如何批量更新MYSQL中的数据
最近项目需要用到批量更新数据库里的数据,在网上找了一下这方面的例子,觉得这个还不错,分享给大家. 在这个业务里里面涉及到了更新两张数据表,那么大家是不是会想到非常简单,马上上代码 $sql ,type ...
- hadoop项目实战--ETL--(二)实现自动向mysql中添加数据
四 项目开发 1 创建数据库db_etl,新建两张表user 和oder.表结构如第一部分图所示. 2 编写python脚本,实现自动向mysql中插入数据. 新建python 项目,目录结构如下图 ...
- PHP读取mysql中的数据
<!DOCTYPE HTML> <html> <head> <title> PHP动态读取mysql中的数据 </title> <me ...
- 辛星浅谈mysql中的数据碎片以及引擎为MyISAM下的操作
对于mysql中的数据碎片,事实上和我们删除数据是息息相关的,删除数据的时候必定会在数据文件里造成不连续的空白空间,对于少量的数据的删除,并不会产生多少的空白空间.假设在一段时间内的大量的删除操作,会 ...
随机推荐
- android 中theme和style的语法相关
1.theme和style都是一组属性的集合,用于定义文本.颜色.大小等显示风格.他们都是资源,可以用android系统级别的一些默认的风格和主题资源,你也可以自定义你自己的主题和风格资源. 2.自定 ...
- 工程环境搭建和网站部署(java)
我们一般访问网站的时候,都是用127.0.0.1:8080...去访问,如果想用www.shopping.com访问java网站时 需要配置C:\Windows\System32\drivers\et ...
- CentOS 6 minimal 网络配置
安装CentOS6 minimal 之后ifconfig 只有lo本地 的127.0.0.1 没有局域网ip. 这边我用的是vmware nat DHCP 提供网络服务.过程就不赘述了. 解决笔记 ...
- 用JS实现的类似QQ密码的输入特效
<input ID="_PSD"></input> <script> function passwordText(ID,pd,mark){ ma ...
- hadoop 集群跑的时候用到hbasejar 文件的引用问题
1. 创建软连接 ln -s /home/hadoop/bigdater/hbase-0.98.6-cdh5.3.6/conf/hbase-site.xml ./hbase-site.xml(记得这里 ...
- mybatis——延迟加载
------------------------------------------------SqlMapConfig.xml------------------------------------ ...
- Unity5 AssetBundle
设置assetBundleName AssetImporter importer = AssetImporter.GetAtPath(p); importer.assetBundleName = x; ...
- 利用C语言获得网页编码
#include <stdio.h> #include <winsock.h> #include <string.h> #pragma comment(lib, & ...
- 打造完美的xml技术解决方案(dom4j/xstream)
转: XML 技术是随着 Java 的发展而发展起来的.在 XML 出现之前对于简单的数据格式通常是存储在 ini 配置文件等文本文件中,复杂的格式则采用自定义的文件格式,因此对于每种文件格式都要有专 ...
- cxxnet在windows下配置遇到的问题
I compiled the dmlc-core and rabbit. When I compile the new version of CXXNET, there are compile err ...