solr快速上手:solr简介及安装(一)

news2024/10/6 22:19:44

0. 引言

虽然现在主流的搜索引擎组件已经es主导,但不乏有部分“老”项目依旧在采用solr,当遇到这类项目时,如何快速上手solr组件,以及后续如何拓展深入研究solr的途径成为问题,本期我们的目的就是带大家来快速上手solr,掌握solr的基础使用

1. solr简介

solr是基于Apache Lucene构建的用于搜索和分析的开源组件,这一点与es一样,作为搜索引擎自然支持分词查询、海量数据查询、高亮显示等

solr是基于java开发的,内嵌了jetty容器,安装简单,同时自带了一个管理端,这一点比es相比不用再额外再安装一个kibana。

solr源码地址:https://github.com/apache/solr
solr官网文档:https://solr.apache.org/guide/solr/latest/index.html

2. solr安装

2.1 单节点安装

1、因为solr是基于java开发的,所以需要首先在服务器上安装jdk环境,这里我安装的jdk1.8

2、下载solr安装包,下载地址:https://solr.apache.org/downloads.html

如果下载最新版可以直接在该页面点击下载

在这里插入图片描述
如果下载历史版本,可在Lucene archives for pre-9.0 releases点击下载
在这里插入图片描述
这里我选择8.2.0版本下载

在这里插入图片描述
3、下载好的安装包上传到linux服务器,或者直接在linux上通过wget指令下载

4、解压安装包

# 这里我上传到了/data目录
tar -xvzf /data/solr-8.2.0.tgz

5、修改solr启动参数,取消健康检查,否则启动会报警告

cd /data/solr-8.2.0/bin
vim solr.in.sh

修改内容

SOLR_ULIMIT_CHECKS=false

6、启动solr

solr不推荐使用root账户启动,这点与es也相同,当然可以直接用-force参数,强制启动

./solr start -force

如果需要修改端口,可以通过-p参数指定

./solr start -p 8089 -force

启动成功可以看到日志打印
在这里插入图片描述

7、因为solr默认端口为8983,于是我们还需要开启端口,如果没有防火墙已经关闭则不用再开启

# 开启端口
firewall-cmd --add-port=8983/tcp --permanent
# 重新加载
firewall-cmd --reload
# 查看端口是否开放
firewall-cmd --query-port=8983/tcp

8、访问服务器ip:8983,可查看到solr管理界面

在这里插入图片描述
9、至此,单机版solr就安装完成了!

2.2 设置solr开机自启

安装完成后我们还需要将solr设置开机自启,不然方服务器重启后,我们还要手动启动solr,比较麻烦

1、编写启动脚本

cd /etc/init.d
vim solr

脚本内容:

#!bin/bash
#chkconfig:2345 55 25
#processname:solr
#description:solr server
prog=/data/solr-8.2.0/bin/solr      
start(){                                
        $prog start -force
        echo "solr启动"
}
stop(){                                
        $prog stop -all
        echo "solr关闭"
}
restart(){              
        stop
        start
}
case "$1" in        
"start")
        start      
        ;;
"stop")            
        stop
        ;;
"restart")            
        restart
        ;;
*)      
        echo "支持指令:$0 start|stop|restart"
        ;;
esac

其中:

chkconfig:2345 55 25 用于设置开机自启时的运行级别、启动优先级、关闭优先级
processname:solr 设置启动的进程名
description:solr server 服务描述

2、给脚本赋权

chmod +x /etc/init.d/solr

3、执行脚本,进行验证

service solr stop
service solr start

这里执行可能会出现错误“找不到java”

在这里插入图片描述
这需要配置solr的java路径

vim /data/solr-8.2.0/bin/solr.in.sh 

修改内容:将SOLR_JAVA_HOME设置为jdk安装路径

SOLR_JAVA_HOME="/var/local/zulu8.58.0.13-ca-jdk8.0.312-linux_aarch64"

设置成功后执行,可以看到日志打印

在这里插入图片描述

4、设置开机自启

# 添加开机自启
chkconfig --add solr
# 开启solr启动
chkconfig solr on

5、重启服务器,访问solr管理界面,发现能直接访问,说明开机自启成功

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/512785.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2023 年第三届长三角高校数学建模竞赛赛题浅析

为了更好地让大家本次长三角比赛选题,我将对本次比赛的题目进行简要浅析。数模模型通常分为优化、预测、评价三类,而本次数学题目就正好对应着A、B、C分别为优化、预测、评价。整体难度不大,主要难点在于A题的优化以及B、C的数据收集。稍后&a…

QT5.12.6 + mysql5.5.9 出现 Driver not loaded Driver not loaded

由于我重装了电脑系统,qt 和mysql均进行了软件版本的升级, 在使用数据库模块时,出现了如下问题: Driver not loaded Driver not loaded 排除问题一: pro文件中是否加载了sql模块 查看pro文件,发现 有此模…

React的两种组件创建方式(二)

react是面向组件编程的一种模式&#xff0c;它包含两种组件类型&#xff1a;函数式组件及类式组件 函数式组件 一个基本的函数组件长这个样子 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><title>hell…

java报错-->java.lang.IllegalAccessError

1、前言 在gradle中运行main方法突然出现如下错误 Exception in thread "main" java.lang.IllegalAccessError: class XXX.util.ImageBorderUtils (in unnamed module 0x4bd4bcd4) cannot access class sun.font.FontDesignMetrics (in module java.desktop) becaus…

使用宝塔在Linux面板搭建网站,并实现公网远程访问「内网穿透」

文章目录 前言1. 环境安装2. 安装cpolar内网穿透3. 内网穿透4. 固定http地址5. 配置二级子域名6. 创建一个测试页面 转载自远程内网穿透的文章&#xff1a;Linux使用宝塔面板搭建网站&#xff0c;并内网穿透实现公网访问 前言 宝塔面板作为简单好用的服务器运维管理面板&#…

数据结构与算法(Java版) | 数组模拟队列的思路分析与代码实现

思路分析 上一讲我们讲过&#xff0c;队列既可以用数组来实现&#xff0c;也可以用链表来实现&#xff0c;但由于我们比较熟悉数组这种结构&#xff0c;所以这里我会先给大家讲一下数组这种实现方式&#xff0c;至于链表这种实现方式&#xff0c;那就以后有机会再说吧&#xf…

探索人工智能新纪元:Pre-Training 快速指南,轻松上手

theme: orange 预训练 Pre-Training 已被证明是当前人工智能范式中最重要的方面之一&#xff0c;大型语言模型&#xff0c;要转变为通用引擎&#xff0c;需要预训练。 什么是预训练模型 人工智能中的预训练至少部分受到人类学习方式的启发。我们不需要从零开始学习一个主题&…

肝一肝设计模式【七】-- 代理模式

系列文章目录 肝一肝设计模式【一】-- 单例模式 传送门 肝一肝设计模式【二】-- 工厂模式 传送门 肝一肝设计模式【三】-- 原型模式 传送门 肝一肝设计模式【四】-- 建造者模式 传送门 肝一肝设计模式【五】-- 适配器模式 传送门 肝一肝设计模式【六】-- 装饰器模式 传送门 文…

JavaWeb:Cookie、Session、JSP、JavaBean、MVC 三层架构

文章目录 JavaWeb - 03一、Cookie1. Cookie 应用2. 注意点 二、Session三、JSP1. 概述2. JSP 基础语法和指令&#xff08;了解&#xff09;3. 内置对象及作用域4. JSP 标签、JSTL 标签 四、JavaBean五、MVC 三层架构1. 之前的架构2. 现在的 MVC 三层架构 注意&#xff1a; Java…

Feign和OpenFeign

1.Feign和OpenFeign的关系 Feign Feign是一个声明式的Web服务客户端&#xff08;Web服务客户端就是Http客户端&#xff09;&#xff0c;让编写Web服务客户端变得非常容易&#xff0c;只需创建一个接口并在接口上添加注解即可。 Feign是Spring Cloud组件中一个轻量级RESTful的H…

MySQL基础学习---7、子查询

子查询 子查询指的是一个查询语句嵌套在另一个查询语句内部的查询&#xff08;从MySQL4.1开始引入&#xff09;。1、子查询的基本使用 语法格式&#xff1a;select select_listfrom tablewhere expr operator(select select_listfrom table); 说明&#xff1a;1、子查询&…

【终极解决方案】IDEA maven 项目修改代码不生效。

【终极解决方案】IDEA maven 项目修改代码不生效。 文章目录 【终极解决方案】IDEA maven 项目修改代码不生效。1、项目问题描述2、可能的解决方案3、分析原因4、解决方案5、参考文献 1、项目问题描述 遇到一个非常奇怪的问题&#xff0c;修改了一个基于maven搭建的SSM项目&am…

learn_C_deep_9 (汇编角度理解return的含义、const 的各种应用场景、volatile 的基本理解与实验证明)

目录 return 关键字 const 关键字 const 修饰的只读变量 - - - 不可直接被修改&#xff01; const修饰的变量&#xff0c;可以作为数组定义的一部分吗&#xff1f; const只能在定义的时候直接初始化&#xff0c;不能二次赋值。为什么&#xff1f; const修饰指针 volatil…

opencv remap 像素重映射

remap()函数的输入是一个源图像和一个映射矩阵。映射矩阵包含了每个像素的新坐标&#xff0c;用于指定每个像素在输出图像中的位置。 假设原始图像中的一个像素的坐标为 ( x , y ) (x,y) (x,y)&#xff0c;它在输出图像中的新坐标为 ( x ′ , y ′ ) (x,y) (x′,y′)。为了计算…

Linux Python Openpyxl xlsx转html

目录 Excel转Html 示例 函数 Openpyxl知识点 其他Excel解析库问题 Excel转Html 示例 函数 import openpyxlfrom openpyxl.styles import Border from openpyxl.styles import Font from openpyxl.styles import Side from openpyxl.styles import Alignment from openpy…

ChipScope 使用问题和解决方案

背景介绍 我最近在学习FPGA开发技术&#xff0c;用杜勇老师的《Xinlinx FPGA数字信号处理设计》一书&#xff0c;按照书中的例子&#xff0c;对 CXD301 开发板进行ADC、DAC示例的调试&#xff0c;使用 ChipScope 软件进行在线逻辑分析。遇到了下面的问题&#xff0c;并给出了解…

【软考数据库】第十章 系统开发与运行

目录 10.1 系统实施 10.1.1 信息系统生命周期 10.1.2 能力成熟度模型 10.1.3 软件过程开发模型 10.1.4 信息系统开发方法 10.1.5 系统分析与设计 10.1.6 结构化开发 10.2 系统测试 10.2.1 测试原则和方法 10.2.2 测试阶段 10.2.3 测试用例设计 10.2.4 调试 10.2.…

现代化个人博客系统 ModStartBlog v7.3.0 首页热门博客,UI优化调整

ModStart 是一个基于 Laravel 模块化极速开发框架。模块市场拥有丰富的功能应用&#xff0c;支持后台一键快速安装&#xff0c;让开发者能快的实现业务功能开发。 系统完全开源&#xff0c;基于 Apache 2.0 开源协议。 功能特性 丰富的模块市场&#xff0c;后台一键快速安装 …

GETOPT函数详解

一、目的 相信第一次接触linux的小伙伴在使用命令行时肯定有这样的疑惑&#xff0c;命令行各种各样的选项和选项参数是怎样实现的&#xff08;各个命令的选项的含义可以通过man手册查看&#xff09;。 二、介绍 在正式介绍之前&#xff0c;我们先来看一下命令行选项的使用&…

数据库原理+openGauss

文章目录 0. 准备工作0.1 实验环境0.2 主要内容0.3 学习资源 1. 安装部署实验&#xff08;实验一&#xff09;1.1 下载VirtualBox1.2 安装VirtualBox1.3 镜像文件导入1.4 启动虚拟机1.5 数据库使用1.6 数据库基本操作 2 表&模式&#xff08;实验二&#xff09;2.1 创建模式…