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" class="org.apache.solr.handler.dataimport.DataImportHandler">
- <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 id ,pname,age,addtime from mysolrInfo">
- <!--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
执行导入
查询
导入成功
Solr 创建core 从MySql数据库中导入数据的更多相关文章
- Solr 07 - Solr从MySQL数据库中导入数据 (Solr DIH的使用示例)
目录 1 加入数据导入处理器的jar包 2 加入数据库驱动包 3 配置solrconfig.xml文件 3.1 配置lib标签 - 加入驱动jar包 3.2 配置requestHandler标签 - ...
- solr6.6教程-从mysql数据库中导入数据(三)
整理多半天的solr6.6,终于算是把solr6.6中配置数据库弄出来了,网上的文章千篇一律,各说个的,没有一篇统一覆盖solr6.6版本配置的 帖子,本章节我会把配置的一些注意事项一一列举,由于时间 ...
- [MySQL]load data local infile向MySQL数据库中导入数据时,无法导入和字段不分离问题。
利用load data将文件中的数据导入数据库表中的时候,遇到了两个问题. 首先是load data命令无法执行的问题: 命令行下输入load data local infile "path ...
- 使用sqoop将MySQL数据库中的数据导入Hbase
使用sqoop将MySQL数据库中的数据导入Hbase 前提:安装好 sqoop.hbase. 下载jbdc驱动:mysql-connector-java-5.1.10.jar 将 mysql-con ...
- 从Mysql数据库中导入导出表结构
1.从Mysql数据库中导入sql表 很简单,只需要一个命令即可搞定:[root@localhost ~]# mysql -uroot -piweb_xxx_mysql iweb < modif ...
- python制作简单excel统计报表3之将mysql数据库中的数据导入excel模板并生成统计图
python制作简单excel统计报表3之将mysql数据库中的数据导入excel模板并生成统计图 # coding=utf-8 from openpyxl import load_workbook ...
- JDBC Java 程序从 MySQL 数据库中读取数据,并备份到 xml 文档中
MySQL 版本:Server version: 5.7.17-log MySQL Community Server (GPL) 相关内容:JDBC Java 程序从 MySQL 数据库中读取数据,并 ...
- 使用grabit分析mysql数据库中的数据血缘关系
使用grabit分析mysql数据库中的数据血缘关系 Grabit 是一个辅助工具,用于从数据库.GitHub 等修订系统.bitbucket 和文件系统等各种来源收集 SQL 脚本和存储过程,然后将 ...
- mysql数据库中插入数据INSERT INTO SET的优势
往mysql数据库中插入数据.以前常用 INSERT INTO 表名 (列名1,列名2…) VALUES(列值1,列值2); 如果在PHP程序中,就会写成如下示例(往商品库里增加商品) $sql = ...
随机推荐
- 雅礼集训 Day6 T1 Merchant 解题报告
Merchant 题目描述 有\(n\)个物品,第\(i\)个物品有两个属性\(k_i,b_i\),表示它在时刻\(x\)的价值为\(k_i\times x+b_i\). 当前处于时刻\(0\),你可 ...
- hadoop学习之HDFS
1.什么是大数据?什么是云计算?什么是hadoop? 大数据现在很火,到底什么是大数据,多大的数据才算大,一般而言对于TB级以上的数据我们成为大数据,对于这些数据它的价值在哪?大数据的价值就是我们大量 ...
- float存储
浮点型变量在计算机内存中占用4字节(Byte),即32-bit.遵循IEEE-754格式标准. 一个浮点数由2部分组成:底数m 和 指数e. ±man ...
- ping & traceroute 原理
说明: 忘记从哪里看到的原文了. 不过我应该进行了大刀阔斧的删选. ping 用类型码为0的ICMP发请 求,受到请求的主机则用类型码为8的ICMP回应. ping程序来计算间隔时间,并计算有多少个包 ...
- Socket学习进阶之基础通信
服务端代码: using System; using System.Text; using System.Net; using System.Net.Sockets; public class ser ...
- [bzoj4513][SDOI2016]储能表——数位dp
题目大意 求 \[\sum_{i = 0}^{n-1}\sum_{j=0}^{m-1} max((i\ xor\ j)\ -\ k,\ 0)\ mod\ p\] 题解 首先,开始并没有看出来这是数位d ...
- Easy Install详细参数
Easy Install Easy Install is a python module (easy_install) bundled with setuptools that lets you au ...
- kvm虚拟机最佳实践系列1-kvm宿主机准备
KVM宿主机配置 系统环境:ubuntu16, bond0 业务网口 bond1 管理网口+存储网口 安装KVM环境支持 sudo apt-get install qemu-kvm sudo apt- ...
- Centos 查看硬盘空间
df -h du -ah --max-depth=1 目录深度为1 -h:以人类可读的方式显示 -a:显示目录占用的磁盘空间大小,还要显示其下目录和文件占用磁盘空间的大小 -s:显示目录占用的磁盘空间 ...
- ZOJ 3820:Building Fire Stations(树的直径 Grade C)
题意: n个点的树,边长全为1,求找出两个点,使得树上离这两个点距离最远的那个点,到这两个点(中某个点就行)的距离最小. 思路: 求树直径,找中点,删除中间那条边(如果直径上点数为奇数,则删任何一侧都 ...