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包的形式发布.开发人员可以将 ...
随机推荐
- C# DataGridView 动态添加列和调整列顺序
https://yq.aliyun.com/articles/421700 // DataGridView1的ColumnDisplayIndexChanged事件处理方法private void D ...
- 论文笔记:Deeper and Wider Siamese Networks for Real-Time Visual Tracking
Deeper and Wider Siamese Networks for Real-Time Visual TrackingUpdated on 2019-04-01 16:10:37 Paper ...
- python读Excel
import xlrd def open_excel(fileName="TransInfo.xlsx"): try: fileHandler = xlrd.open_workbo ...
- JS构造函数、原型对象、隐含参数this
This 解析器再调用函数每次都会向函数内部传递一个隐含的参数this,this指向的是一个对象(函数执行的上下文对象) 1.以函数形式调用时,this永远是window. 2.以方法形式调用时,th ...
- Table组件设置文字超出宽度显示省略号,鼠标悬停以悬浮框显示
一.设置文字超出宽度显示省略号 注意点: 1. 需要指定column的width属性,否则列头跟内容可能不对齐.需要留一列不设置宽度以适应弹性布局. 2. 列宽度width必须大于ellipsis的 ...
- js清除childNodes中的#text(选项卡中会用到获取第一级子元素)
我们一般为了代码整洁代码都会换行,如上面所述. 获取div1节点下的childNodes var div = document.getElementById('div1') var child = d ...
- 虚拟现实外包—动点飞扬软件专门承接VR/AR场景、游戏、项目外包
VR外包AR外包公司(虚拟现实外包公司)承接虚拟现实项目开发(企业.教育.游戏.企业大数据展示等) 有VR/AR.Unity3D项目.游戏外包业务欢迎 联系我们 QQ:372900288 TEL:13 ...
- python小技巧---打印出不同颜色的输出
在调试代码时打印常常一种颜色,找个东西真的是很难,在一次听金角大王的视频中听到了个方法,也是喀什使用了,本来不打算做记录了,可是稍微有几天不用,还得翻之前的代码,找着也是听麻烦的,现在在这里做个记录 ...
- jfinal afterJFinalStart中执行长久循环操作的解决方案:创建新线程
很多时候,需要在jfinal中afterJFinalStart方法中,写一些需要一直循环运行的程序,做一些循环操作.但是在afterJFinalStart中,执行时间过长的话,会导致整个站点启动超时. ...
- final model for bioinformatics
final model for bioinformatics 模拟真实的生物系统,从有机分子到细胞,到组织,到器官,到个体,到家系,到群体. 正确的设计结构,可拓展性,可塑性. 良好的可视化. 面向对 ...