SolrCloud7.4(Jetty容器)+mysql oracle 部署与应用
SolrCloud7.4(Jetty容器)搭建
1、Zookeeper搭建
版本:zookeeper-3.4.10.tar.gz
1、把zookeeper安装包上传到服务器
2、zookeeper解压
3、将zookeeper目录复制到其他三台服务器
zookeeper01 zookeeper02 zookeeper03
4、在zookeeper01~3目录下创建一个data文件夹。
5、在data目录下创建一个myid的文件,myid的内容为1(02对应“2”,03对应“3”)echo 1 >>myid,echo 2 >>myid,echo 3 >>myid
6、进入zookeeper安装目录的conf目录,拷贝一份zoo_sample.cfg文件改名为zoo.cfg
7、修改zoo.cfg,把dataDir=属性指定为刚创建的data文件夹。
8、修改zoo.cfg,把clientPort指定为不冲突的端口号(01:2181、02:2182、03:2183)
9、在zoo.cfg中添加如下内容:
server.1=solrcloud-01:2887:3887
server.2=solrcloud-02:2887:3887
server.3=solrcloud-03:2887:3887
zoo.cfg配置如下

分别启动三个zookeeper。
Zookeeper的目录下有一个bin目录。使用zkServer.sh启动zookeeper服务。
启动:./zkServer.sh start
关闭:./zkServer.sh stop
查看服务状态:./zkServer.sh status
2、solr集群搭建
1、下载solr安装包 solr-7.4.0.tgz
2、上传至服务器并解压
3、将solr-7.4.0\server\lib\ext 下所有jar包
以及solr-7.4.0\dist 目录下的
solr-dataimporthandler-7.4.0.jar
solr-dataimporthandler-extras-7.4.0.jar
拷贝至solr-7.4.0\server\solr-webapp\webapp\WEB-INF\lib
4、配置solr-7.4.0\bin\solr.in.sh

SOLR_JAVA_MEM 配置为jvm内存,不要太大也不要太小
太大会发生崩溃性内存交换
太小会影响效率
这个参数可以调优
ZK_HOST="solrcloud-01:2182,solrcloud-02:2182,solrcloud-03:2182"
5、保存并启动solr
./solr start -force
2、solr采集数据--mysql、oracle
1、solr-7.4.0\example\example-DIH\solr\solr\conf 目录下是标准的core目录
创建data\solr7.4\solr-home\default\conf 并复制
2、配置solr-data-config.xml和managed-schema
solr-data-config.xml
编辑solr-data-config.xml,如下:

说明:datasource节点用来配置mysql连接串;
Entity节点用来配置core,pk属性是必须的一般是表的主键
Query用来指定查询的sql(全量查询),或是某个表
DataImportQuery是用来增量查询的语句结构
Daltaquery用来指定增量查询的条件,一般是根据updatetime来限定。
Field节点用来指定数据表字段与索引名称关系,一般保持一致。
特殊说明:
mysql: mysql驱动需要下载mysql-connector-java-5.1.39-bin.jar 并放到solr-7.4.0\server\solr-webapp\webapp\WEB-INF\lib目录下
配置demo:

oracle:oracle采用jdbc方式连接需下载ojdbc6.jar放到solr-7.4.0\server\solr-webapp\webapp\WEB-INF\lib目录下
配置demo:

编辑manage-schema文件:

_version和text_general这两个属性要保留,否则在跑索引会报错
Uniquekey节点要指定索引的唯一主键,一般对应数据库主键索引名称。
每个field节点制定了索引名称(name),索引类型(type)是否要建立索引(indexed),
是否建立文件存储(stored),是否是多值(multivalued),是否是必须的(required),特
别说明required=true是必须要建立索引,对于某些字段有空值,是不适用的,会报错。
3、增量索引
全量索引:
http://url/solr/province/dataimport?command=full-import&clean=true&inden
t=true&wt=json
增量索引:
http://url/solr/province/dataimport?command=delta-import&indent=true&wt
=json
相关资料下载solr7.4+zookeeper安装包(lib文件夹下包括mysql、oracle驱动所需标准jar包):
链接:https://pan.baidu.com/s/1NJ1GUF_oRQVZGfuwL0Q_AQ 密码:qot9
SolrCloud7.4(Jetty容器)+mysql oracle 部署与应用的更多相关文章
- cargo实现自动化部署远程jetty容器(非安全模式)
cargo实现自动化部署应用至远程jetty容器 (非安全模式) 一.准备: WAR包:Deployer Web application for the Jetty remote containers ...
- Jetty学习四:部署到Jetty
转自:http://www.tuicool.com/articles/NrENjq Web应用的框架 标准Jetty发布版本能部署标准servlet Spec Web应用和Jetty内部Context ...
- Java与SQL Server, MySql, Oracle, Access的连接方法以及一些异常解决
Java与SQL Server, MySql, Oracle, Access的连接方法以及一些异常解决 I. 概述 1.1 JDBC概念 JDBC(Java Database Connectivity ...
- 图文详解 IntelliJ IDEA 15 创建 Maven 构建的 Java Web 项目(使用 Jetty 容器)
图文详解 IntelliJ IDEA 15 创建 maven 的 Web 项目 搭建 maven 项目结构 1.使用 IntelliJ IDEA 15 新建一个项目. 2.设置 GAV 坐标 3. ...
- SQLErrorCodes loaded: [DB2, Derby, H2, HSQL, Informix, MS-SQL, MySQL, Oracle, PostgreSQL, Sybase
sqlserver 插入数据的时候 插入失败,报错内容为 “SQLErrorCodes loaded: [DB2, Derby, H2, HSQL, Informix, MS-SQL, MySQL, ...
- AspNetCore容器化(Docker)部署(三) —— Docker Compose容器编排
一.前言 上一篇部署了一个最基础的helloworld应用,创建了两个容器和一个network,还算应付得过来. 如果该应用继续引入mysql.redis.job等若干服务,到时候发布一次得工作量之大 ...
- 图文具体解释 IntelliJ IDEA 15 创建 Maven 构建的 Java Web 项目(使用 Jetty 容器)
图文具体解释 IntelliJ IDEA 15 创建 maven 的 Web 项目 搭建 maven 项目结构 1.使用 IntelliJ IDEA 15 新建一个项目. 2.设置 GAV 坐标 3. ...
- 2-MySQL DBA笔记-MySQL安装部署和入门
第2章 MySQL安装部署和入门 第1章介绍了MySQL的一些基础知识,本章将为读者介绍MySQL的部署.安装及一些常用命令和参数的设置.2.1 如何选择MySQL版本 在选择MySQL的版本时,要根 ...
- spring内嵌jetty容器,实现main方法启动web项目
Jetty 是一个开源的servlet容器,它为基于Java的web容器,例如JSP和servlet提供运行环境.Jetty是使用Java语言编写的,它的API以一组JAR包的形式发布.开发人员可以将 ...
随机推荐
- HttpClient throws TaskCanceledException on timeout
error msg: HttpClient throws TaskCanceledException on timeout HttpClient is throwing a TaskCanceledE ...
- @resource、@Autowired、@Service在一个接口多个实现类中的应用
Spring在没有引入注解之前,传统的Spring做法是使用.xml文件来对bean进行注入,所有的内容都需要配置在.xml文件中,使配置和编程分离,却增加了可读性和复杂度. Spring注解将复杂的 ...
- centos7 mysql数据库的安装与使用
一:数据库的安装 第一步 下载数据库到主机,, 第二步 通过xshell将数据库压缩包上传至centos7虚拟主机(#注意:服务器主机需下载上传工具lrzsz 命令:yun -y install ...
- RabbitMQ跟Redis做消息队列的区别
区别 https://www.zhihu.com/question/20795043 https://blog.csdn.net/dd18709200301/article/details/79077 ...
- 理解R语言gdistance包下的transition函数
library(raster)library(gdistance)r <- raster(nrows=3, ncols=4, xmn=0, xmx=7, ymn=0, ymx=6, crs=&q ...
- 使用vue+iview实现上传文件及常用的下载文件的方法
首先说明一下,我们这次主要用的还是iview的upload上传组件,下面直接上代码 <Upload ref="upload" multiple='true' //是否支持多文 ...
- crop image 需要的基础知识
refer : https://www.youtube.com/watch?v=R7dObDtw1aA https://www.shuxuele.com/algebra/trig-finding-an ...
- 远程连接bat
@Echo offSet SERVER=10.40.61.101Set USERNAME=AdministratorSet PASSWORD=Marvin2008 Cmdkey /generic:TE ...
- 简化kubernetes应用部署工具之Helm应用部署
介绍 微服务和容器化给复杂应用部署与管理带来了极大的挑战.Helm是目前Kubernetes服务编排领域的唯一开源子项目,做为Kubernetes应用的一个包管理工具,可理解为Kubernetes的a ...
- W10激活
1.首先,我们先查看一下Win10正式专业版系统的激活状态: 点击桌面左下角的“Windows”按钮,从打开的扩展面板中依次点击“设置”-“更新和安全”,并切换到“激活”选项卡,在此就可以查看到当前系 ...