Apache Solr 最常用的命令
目录
一、Solr 安装与配置
1.1 下载与安装
1.2 启动与停止
二、Core 和 Collection 管理
2.1 创建与删除
2.2 核心操作
三、索引管理
3.1 添加与删除文档
3.2 批量操作
3.3 提交与优化
四、查询与检索
4.1 基本查询
4.2 高级查询
五、Schema 管理
5.1 字段管理
5.2 字段类型管理
六、备份与恢复
6.1 创建备份
6.2 恢复备份
Apache Solr 是一个强大的开源搜索平台,广泛应用于各种搜索和数据分析应用中。本文将介绍 Solr 中最常用的命令,涵盖安装与配置、Core 和 Collection 管理、索引管理、查询与检索、Schema 管理、以及备份与恢复等方面。
一、Solr 安装与配置
1.1 下载与安装
1.1.1 下载 Solr
从 Solr 官方网站 下载最新版本。
1.1.2 安装 Solr
tar xzf solr-8.8.2.tgz
cd solr-8.8.2
1.2 启动与停止
1.2.1 启动 Solr
bin/solr start
1.2.2 停止 Solr
bin/solr stop
1.2.3 启动特定端口上的 Solr
bin/solr start -p 8983
1.2.4 查看 Solr 运行状态
bin/solr status
二、Core 和 Collection 管理
2.1 创建与删除
2.1.1 创建新的 Core
bin/solr create -c mycore
2.1.2 删除 Core
bin/solr delete -c mycore
2.1.3 创建新的 Collection
bin/solr create -c mycollection -n data_driven_schema_configs
2.1.4 删除 Collection
bin/solr delete -c mycollection
2.2 核心操作
2.2.1 重载 Core
bin/solr reload -c mycore
2.2.2 重命名 Core
bin/solr rename -c oldname -newname newname
2.2.3 查看所有 Cores
bin/solr cores
三、索引管理
3.1 添加与删除文档
3.1.1 添加单个文档
curl http://localhost:8983/solr/mycore/update?commit=true -d '{"id":"1", "title":"Solr Guide"}'
3.1.2 删除单个文档
curl http://localhost:8983/solr/mycore/update?commit=true -d '{"delete":{"id":"1"}}'控制台删除文档
<delete><query>ID:551712</query></delete>
3.1.3 删除符合条件的文档
curl http://localhost:8983/solr/mycore/update?commit=true -d '{"delete":{"query":"title:Solr Guide"}}'
3.2 批量操作
3.2.1 批量添加文档
curl http://localhost:8983/solr/mycore/update?commit=true --data-binary @documents.json -H 'Content-type:application/json'
3.2.2 批量删除文档
curl http://localhost:8983/solr/mycore/update?commit=true -d @delete_query.json -H 'Content-type:application/json'
3.3 提交与优化
3.3.1 提交更改
curl http://localhost:8983/solr/mycore/update?commit=true
3.3.2 优化索引
curl http://localhost:8983/solr/mycore/update?optimize=true
四、查询与检索
4.1 基本查询
4.1.1 简单查询
curl http://localhost:8983/solr/mycore/select?q=title:Solr
4.1.2 分页查询
curl http://localhost:8983/solr/mycore/select?q=title:Solr&start=0&rows=10
4.1.3 排序查询
curl http://localhost:8983/solr/mycore/select?q=title:Solr&sort=id asc
4.2 高级查询
4.2.1 过滤查询
curl http://localhost:8983/solr/mycore/select?q=title:Solr&fq=author:John
4.2.2 字段查询
curl http://localhost:8983/solr/mycore/select?q=title:Solr&fl=id,title
4.2.3 范围查询
curl http://localhost:8983/solr/mycore/select?q=price:[10 TO 50]
五、Schema 管理
5.1 字段管理
5.1.1 添加新字段
curl -X POST -H 'Content-type:application/json' --data-binary '{"add-field":{"name":"newfield","type":"string","stored":true }}' http://localhost:8983/solr/mycore/schema
5.1.2 删除字段
curl -X POST -H 'Content-type:application/json' --data-binary '{"delete-field":{"name":"newfield"}}' http://localhost:8983/solr/mycore/schema
5.2 字段类型管理
5.2.1 添加字段类型
curl -X POST -H 'Content-type:application/json' --data-binary '{"add-field-type":{"name":"newtype","class":"solr.TextField","analyzer":{"tokenizer":{"class":"solr.StandardTokenizerFactory"}}}}' http://localhost:8983/solr/mycore/schema
5.2.2 删除字段类型
curl -X POST -H 'Content-type:application/json' --data-binary '{"delete-field-type":{"name":"newtype"}}' http://localhost:8983/solr/mycore/schema
六、备份与恢复
6.1 创建备份
6.1.1 创建快照
curl http://localhost:8983/solr/admin/cores?action=BACKUP&core=mycore&location=/path/to/backup/dir
6.1.2 创建 Collection 备份
bin/solr create_collection_backup -c mycollection -d /path/to/backup/dir
6.2 恢复备份
6.2.1 恢复快照
curl http://localhost:8983/solr/admin/cores?action=RESTORE&core=mycore&location=/path/to/backup/dir
6.2.2 恢复 Collection 备份
bin/solr restore_collection_backup -c mycollection -d /path/to/backup/dir
通过上述命令,您可以有效地管理和操作 Solr,确保搜索平台的高效运行和数据的完整性。
相关文章:
Apache Solr 最常用的命令
目录 一、Solr 安装与配置 1.1 下载与安装 1.2 启动与停止 二、Core 和 Collection 管理 2.1 创建与删除 2.2 核心操作 三、索引管理 3.1 添加与删除文档 3.2 批量操作 3.3 提交与优化 四、查询与检索 4.1 基本查询 4.2 高级查询 五、Schema 管理 5.1 字段管理 …...

经济下行,企业还在“裁员至上”?
最近小红书、B站崩溃,又延伸到某云服务厂商问题频发,让人忍不住戏谑:“这算不算裁员裁到大动脉?” 在阿道看来,各大企业的裁员动作,绕不开的依旧是“人月神话”:盲目加人带来的是成本的倍增和效…...

学习笔记之Java篇(0729)
p 数组 大纲知识点数组的概念数组的定义、四个特点数组的常见操作普通遍历、for-each遍历、java.util.Array类用法多维数组多维数组的内存结构、存储表格、Javabean和数组存储表格常见算法冒泡排序基础算法、冒泡排序优化算法、二分法查找(折半查找) 1、…...
吃肉的刷题记录4-基础知识-字符串
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 leetcode.186.反转字符串中的单词 leetcode.186.反转字符串中的单词 https://leetcode.cn/problems/reverse-words-in-a-string-ii/ 给你一个字符数组 s …...
人工智能与机器学习原理精解【7】
文章目录 凸优化基础理论加权正规方程线性回归模型加权最小二乘法加权正规方程注意使用Diagonal函数使用diagm函数总结 加权最小二乘法加权最小二乘法的定义加权最小二乘法的算法加权最小二乘法的计算加权最小二乘法的原理一、基本思想二、原理详解三、总结 加权最小二乘法的例…...

ResNet学习笔记
《Deep Residual Learning for Image Recongition》:用于图像分类的深度残差学习。 ResNet(残差网络)是在2015年由微软研究院的Kaiming He等人提出的,旨在解决深度神经网络训练过程中的梯度消失、梯度爆炸问题,并允许…...

使用chainlit快速构建类似OPEN AI一样的对话网页
快速开始 创建一个文件,例如“chainlit_chat” mkdir chainlit_chat进入 chainlit_chat文件夹下,执行命令创建python 虚拟环境空间(需要提前安装好python sdk。 Chainlit 需要python>3.8。,具体操作,由于文章长度问题就不在叙述…...

【根据字符出现频率排序】python刷题记录
R2-字符串算法 包哈希表的呀。 注意 class Solution:def frequencySort(self, s: str) -> str:dictdefaultdict(list)#字符串不能直接排序,需要转换为列表["a","b","c"]slist(s)for str in s:if not dict[str]:dict[str]1else:…...

活动报名小程序
#活动报名工具# # 活动报名小程序 ## 项目简介 一款通用的活动报名工具,包含活动展示,微信支付,订单管理,分享评价等功能。 品客聚精彩,有你才精彩!不只有线下活动还可以进行线上裂变活动。 …...
unity基础问题
1.一个列表中的UI有放大效果,用什么实现? 缩放,Layout组件可以勾选使用子级缩放,这样缩放之后也能保持间距 2.UGUI事件传递机制的冒泡机制是怎样的 事件系统从内向外遍历UI层次结构,通知父级UI元素有关该事件的信息。类…...

RedHat Enterprise Linux 7 YUM源(本地/网络源)配置详解
目录 一、挂载 二、建立本地源 三、建立网络源 四、验证可行性 一、挂载 ——将光盘挂载到 /mnt 下 当/mnt中有如图内容时,即挂载成功 若挂载光驱/dev/sr0时报错:mount: no medium found on /dev/sr0 解决措施:查看该设备状态是否全部勾选…...

关于顺序表数组下标的一些关系梳理
...

VS C++ Project(项目)的工作目录设置
如果只是简单创建一个VS CProject或者MFC Project,可能很多时候,只关心将Project放在硬盘的那个位置,与Project目录相关的的其他问题,并不引人注意,我们也不是十分在意。有时我们不得不进行工作目录方面的设置…...
STM32自定义协议串口接收解析指令程序
1、在使用串口接收自定义协议指令时,需要串口解析收到的是什么指令,举例通信报文为 上位机->单片机 名称 长度 备注 帧头 1Byte 0x5A 0x5A 帧长度 1Byte 数据包的长度0x00-0xFF 数据包 命令字 1Byte 功能标识 数据 可以为空 校验 …...

STM32——GPIO(点亮LEDLED闪烁)
一、什么是GPIO? GPIO(通用输入输出接口): 1.GPIO 功能概述 GPIO 是通用输入/输出(General Purpose I/O)的简称,既能当输入口使用,又能当输出口使用。端口,就是元器件…...

VulnHub靶机入门篇--kioptrix.level 3
1.环境准备 靶机:Kioptrix Level 3(Nat模式) 下载地址:https://download.vulnhub.com/kioptrix/KVM3.rar 攻击机:kali(192.168.26.128)(Nat模式) 2.渗透测试 信息收…...

aiGPT系统源码★重大升级★AI写作/AI绘画/AI音乐/AI视频
亲爱老铁们好,又一段时间未更新内容了,我依然是爱你们的神点妹,今天点妹给大家带来一波新的福利:咱们用的aiGPT经过攻城师们近半年来夜以继日的技术升级,今天终于迎来了新版上线首秀。此次升级内容包含:首先…...
Vue Router高级用法:动态路由与导航守卫
Vue Router是Vue.js官方的路由管理器,它和Vue.js的核心深度集成,让构建单页应用变得轻而易举。 动态路由 动态路由允许你在路由路径中使用变量,这些变量可以从实际的URL中获取,并传递给对应的路由组件。 定义动态路由 在route…...

江科大/江协科技 STM32学习笔记P9-11
文章目录 OLED1、OLED硬件main.c EXTI外部中断1、中断系统2、中断执行流程图3、STM32中断4、中断地址的作用5、EXTI6、EXTI基本结构7、AFIO复用IO口8、EXTI框图或门和与门 9、旋转编码器介绍10、硬件电路 OLED 1、OLED硬件 SCL和SDA是I2C的通信引脚,需要接在单片机…...

【培训通知】成为Power BI数据分析可视化实战第一人,加入3天直播即可
Power BI数据分析可视化实战课程培训是一门旨在提升学员在数据分析与可视化领域能力的专业课程。以下是对该培训课程的详细介绍: 一、课程概述 Power BI 是一种业务分析服务,能够提供深入的见解,帮助用户实现快速、明智的决策。该课程通过实…...

iOS 26 携众系统重磅更新,但“苹果智能”仍与国行无缘
美国西海岸的夏天,再次被苹果点燃。一年一度的全球开发者大会 WWDC25 如期而至,这不仅是开发者的盛宴,更是全球数亿苹果用户翘首以盼的科技春晚。今年,苹果依旧为我们带来了全家桶式的系统更新,包括 iOS 26、iPadOS 26…...
反射获取方法和属性
Java反射获取方法 在Java中,反射(Reflection)是一种强大的机制,允许程序在运行时访问和操作类的内部属性和方法。通过反射,可以动态地创建对象、调用方法、改变属性值,这在很多Java框架中如Spring和Hiberna…...

uniapp微信小程序视频实时流+pc端预览方案
方案类型技术实现是否免费优点缺点适用场景延迟范围开发复杂度WebSocket图片帧定时拍照Base64传输✅ 完全免费无需服务器 纯前端实现高延迟高流量 帧率极低个人demo测试 超低频监控500ms-2s⭐⭐RTMP推流TRTC/即构SDK推流❌ 付费方案 (部分有免费额度&#x…...
高防服务器能够抵御哪些网络攻击呢?
高防服务器作为一种有着高度防御能力的服务器,可以帮助网站应对分布式拒绝服务攻击,有效识别和清理一些恶意的网络流量,为用户提供安全且稳定的网络环境,那么,高防服务器一般都可以抵御哪些网络攻击呢?下面…...

3-11单元格区域边界定位(End属性)学习笔记
返回一个Range 对象,只读。该对象代表包含源区域的区域上端下端左端右端的最后一个单元格。等同于按键 End 向上键(End(xlUp))、End向下键(End(xlDown))、End向左键(End(xlToLeft)End向右键(End(xlToRight)) 注意:它移动的位置必须是相连的有内容的单元格…...
Spring是如何解决Bean的循环依赖:三级缓存机制
1、什么是 Bean 的循环依赖 在 Spring框架中,Bean 的循环依赖是指多个 Bean 之间互相持有对方引用,形成闭环依赖关系的现象。 多个 Bean 的依赖关系构成环形链路,例如: 双向依赖:Bean A 依赖 Bean B,同时 Bean B 也依赖 Bean A(A↔B)。链条循环: Bean A → Bean…...

Golang——7、包与接口详解
包与接口详解 1、Golang包详解1.1、Golang中包的定义和介绍1.2、Golang包管理工具go mod1.3、Golang中自定义包1.4、Golang中使用第三包1.5、init函数 2、接口详解2.1、接口的定义2.2、空接口2.3、类型断言2.4、结构体值接收者和指针接收者实现接口的区别2.5、一个结构体实现多…...

使用SSE解决获取状态不一致问题
使用SSE解决获取状态不一致问题 1. 问题描述2. SSE介绍2.1 SSE 的工作原理2.2 SSE 的事件格式规范2.3 SSE与其他技术对比2.4 SSE 的优缺点 3. 实战代码 1. 问题描述 目前做的一个功能是上传多个文件,这个上传文件是整体功能的一部分,文件在上传的过程中…...
从实验室到产业:IndexTTS 在六大核心场景的落地实践
一、内容创作:重构数字内容生产范式 在短视频创作领域,IndexTTS 的语音克隆技术彻底改变了配音流程。B 站 UP 主通过 5 秒参考音频即可克隆出郭老师音色,生成的 “各位吴彦祖们大家好” 语音相似度达 97%,单条视频播放量突破百万…...
Netty自定义协议解析
目录 自定义协议设计 实现消息解码器 实现消息编码器 自定义消息对象 配置ChannelPipeline Netty提供了强大的编解码器抽象基类,这些基类能够帮助开发者快速实现自定义协议的解析。 自定义协议设计 在实现自定义协议解析之前,需要明确协议的具体格式。例如,一个简单的…...