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 部署与应用的更多相关文章

  1. cargo实现自动化部署远程jetty容器(非安全模式)

    cargo实现自动化部署应用至远程jetty容器 (非安全模式) 一.准备: WAR包:Deployer Web application for the Jetty remote containers ...

  2. Jetty学习四:部署到Jetty

    转自:http://www.tuicool.com/articles/NrENjq Web应用的框架 标准Jetty发布版本能部署标准servlet Spec Web应用和Jetty内部Context ...

  3. Java与SQL Server, MySql, Oracle, Access的连接方法以及一些异常解决

    Java与SQL Server, MySql, Oracle, Access的连接方法以及一些异常解决 I. 概述 1.1 JDBC概念 JDBC(Java Database Connectivity ...

  4. 图文详解 IntelliJ IDEA 15 创建 Maven 构建的 Java Web 项目(使用 Jetty 容器)

    图文详解 IntelliJ IDEA 15 创建 maven 的 Web 项目 搭建 maven 项目结构 1.使用 IntelliJ IDEA 15 新建一个项目.  2.设置 GAV 坐标  3. ...

  5. SQLErrorCodes loaded: [DB2, Derby, H2, HSQL, Informix, MS-SQL, MySQL, Oracle, PostgreSQL, Sybase

    sqlserver 插入数据的时候 插入失败,报错内容为 “SQLErrorCodes loaded: [DB2, Derby, H2, HSQL, Informix, MS-SQL, MySQL, ...

  6. AspNetCore容器化(Docker)部署(三) —— Docker Compose容器编排

    一.前言 上一篇部署了一个最基础的helloworld应用,创建了两个容器和一个network,还算应付得过来. 如果该应用继续引入mysql.redis.job等若干服务,到时候发布一次得工作量之大 ...

  7. 图文具体解释 IntelliJ IDEA 15 创建 Maven 构建的 Java Web 项目(使用 Jetty 容器)

    图文具体解释 IntelliJ IDEA 15 创建 maven 的 Web 项目 搭建 maven 项目结构 1.使用 IntelliJ IDEA 15 新建一个项目. 2.设置 GAV 坐标 3. ...

  8. 2-MySQL DBA笔记-MySQL安装部署和入门

    第2章 MySQL安装部署和入门 第1章介绍了MySQL的一些基础知识,本章将为读者介绍MySQL的部署.安装及一些常用命令和参数的设置.2.1 如何选择MySQL版本 在选择MySQL的版本时,要根 ...

  9. spring内嵌jetty容器,实现main方法启动web项目

    Jetty 是一个开源的servlet容器,它为基于Java的web容器,例如JSP和servlet提供运行环境.Jetty是使用Java语言编写的,它的API以一组JAR包的形式发布.开发人员可以将 ...

随机推荐

  1. HDU 3948 The Number of Palindromes(Manacher+后缀数组)

    题意 求一个字符串中本质不同的回文子串的个数. $ 1\leq |string| \leq 100000$ 思路 好像是回文自动机的裸题,但是可以用 \(\text{Manacher}\) (马拉车) ...

  2. EntityFrameworkCore将数据库Timestamp类型在程序中转为long类型

    EntityFrameworkCore将数据库Timestamp类型在程序中转为long类型 EntityFrameworkCore Entity public class Entity { publ ...

  3. shell 的多进程

    例子 #!/bin/bash temp_fifo_file=$$.info #以当前进程号,为临时管道取名 mkfifo $temp_fifo_file #创建临时管道 exec <>$t ...

  4. 报错:keep must be either "first", "last" or False

    data_mac_set = data_mac.drop_duplicates(['std_mac']) 此时会报错:keep must be either "first", &q ...

  5. load data导txt文件进mysql中的数据

    1.实验内容: 利用SQL语句“load data ”将“.txt”文本文件中的数据导入到mysql中 2.实验过程: 首先我创了一个txt(也可以是其他的),设置其编码为utf-8,在windows ...

  6. sql server 学习笔记 ( row_number, rank, dense_rank over partition by order by )

    refer : https://blog.csdn.net/winer2008/article/details/4283539 https://www.cnblogs.com/linJie193090 ...

  7. windows下用c++调用caffe做前向

    参考博客: https://blog.csdn.net/muyouhang/article/details/54773265 https://blog.csdn.net/hhh0209/article ...

  8. 用Python实现支持向量机并处理Iris数据集

    SVM全称是Support Vector Machine,即支持向量机,是一种监督式学习算法.它主要应用于分类问题,通过改进代码也可以用作回归.所谓支持向量就是距离分隔面最近的向量.支持向量机就是要确 ...

  9. 操纵Review被封店,申诉信

    标签: 测评被封 亚马逊申诉 操纵评价申诉 分类: 亚马逊申诉模板 Hello,We recently contacted you about product review manipulation. ...

  10. python标准库总的random函数用法

    Python标准库中的random函数,可以生成随机浮点数.整数.字符串,甚至帮助你随机选择列表序列中的一个元素,打乱一组数据等.random中的一些重要函数的用法:1 ).random() 返回0& ...