Linux怎么安装Solr搜索引擎

幻夢星雲

幻夢星雲

2026-07-01

321人浏览

原创

solr 8.11+ 推荐使用 bin/solr start 启动内置 jetty,而非外置 tomcat;需确保 java 11+(openjdk 更稳)、默认 server/solr 路径不可乱改、中文分词器须通过 analyzer 接口实测验证、启动失败优先查 solr.log 和 netstat -tuln | grep :8983。

linux怎么安装solr搜索引擎

直接说结论:Solr 8.11+ 推荐用 bin/solr start 启动内置 Jetty,别硬套 Tomcat;只有老版本(7.x 及更早)或有强监控/多租户需求时才考虑外置容器。


Java 版本不对,bin/solr start 会静默失败

不是报错退出,就是卡在 “Starting Solr” 不动,或者启动后立刻消失 —— 八成是 Java 版本不匹配。

  • Solr 8.11.x 要求 java -version 输出必须含 11.(如 11.0.22),不能是 1.8.0_*
  • Solr 9.x 强制要求 Java 17+,用 OpenJDK 更稳(CentOS/RHEL 执行 sudo yum install -y java-17-openjdk-devel
  • 别改 SOLR_JAVA_HOME 绕过检查:它只影响启动脚本读取路径,不改变 JVM 实际版本;真正起作用的是系统 PATH 中的 java 命令
  • 验证方式:运行 bin/solr start -V,第一行就显示 Using Java version: ...,不对就换 JDK

solr home 路径搞错,新建 core 就报 Can't find configset '_default'

这不是配置文件丢了,而是 Solr 根本没找到 configset 目录。默认情况下,Solr 8+ 把 server/solr 当作 root solr home —— 它是硬编码路径,不是靠环境变量驱动的。

PyCharm 2026.2.0.1 Linux版
PyCharm 2026.2.0.1 Linux版

PyCharm 2026.2.0.1 Linux版提供 JetBrains 官方 2026.2.0.1 版本安装包,适合需要指定 PyCharm 版本进行 Python 项目开发、运行和调试的用户。

下载
  • 别乱设 SOLR_HOME:一旦 export 过,所有 core 必须放在你指定的路径下,且该路径里得有 configsets/_default,否则 bin/solr create -c mycore 必挂
  • 正确做法:保持默认,让 Solr 自己管 server/solr;新建 core 时命令自动在 server/solr/mycore/conf/ 下建好标准结构
  • 如果真要自定义路径,用 -s /path/to/home 参数(如 bin/solr create -c mycore -s /opt/my-solr-home),而不是靠环境变量
  • server/solr/mycore/core.properties 文件不能删:里面 configSet=xxx 是 runtime 加载依据,删了 UI 或 API 创建 core 都会失败

中文分词器装完没生效?别只看插件是否加载成功

插件复制进 server/solr/configsets/_default/conf/analysis-ik/、改了 managed-schema、重启了 Solr —— 这些都只是“表面完成”。真正要看效果,得走 analyzer 接口实测。

  • 执行命令:curl "http://localhost:8080/solr/mycore/analysis/field?analysis.fieldname=text_general&analysis.text=北京大学"
  • 重点看返回 JSON 中 tokens 数组:如果还是单字切分("北","京","大","学"),说明 IK 没生效;正确应是 "北京大学""北京","大学"
  • 常见坑:schema 中字段 type 指向的 text_ik 类型没定义,或定义里 analyzer class="org.apache.lucene.analysis.cn.smart.SmartChineseAnalyzer" 写成了旧版类名(Solr 8+ 已弃用 SmartChineseAnalyzer,改用 analysis-smartcn 插件 + smartcn_tokenizer
  • 注意端口:默认是 8983,不是 8080;如果改过 solr.in.shSOLR_PORT,要同步替换 curl 地址

启动后访问不了 Web UI?先查端口和防火墙,再看日志位置

浏览器打不开 http://localhost:8983/solr,别急着重装,90% 是网络或权限问题。

  • 确认 Solr 真跑起来了:bin/solr status,输出里要有 solr-8.11.2 is running 和 PID
  • 查监听端口:netstat -tuln | grep :8983,没输出说明没监听成功;若有输出但外部访问不了,大概率是防火墙挡了
  • CentOS/RHEL 执行:sudo firewall-cmd --permanent --add-port=8983/tcp && sudo firewall-cmd --reload
  • 日志不在 catalina.out:Solr 8+ 默认写到 server/logs/solr.log,错误信息全在里面;启动失败时,bin/solr start -f(前台模式)能实时看到报错
  • 别信 localhost:远程服务器上,用服务器 IP 访问,不是本地 localhost;如果绑定了 127.0.0.1(默认行为),需改 solr.in.shSOLR_HOST0.0.0.0 才能外网访问

复杂点在于:Solr 启动逻辑看似简单,实际耦合了 Java 版本、路径约定、配置加载顺序、网络绑定策略四层判断;任何一个环节偏离默认假设,都会导致“没报错但不工作”。最容易被忽略的是 server/solr 这个隐式 home 路径,以及 analyzer 接口的实测验证 —— 它们不显眼,但决定功能是否真可用。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

2023.06.21

2694

4

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

2023.06.29

1672

10

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

2023.06.30

1320

5

linux修改文件名
linux修改文件名

本专题为大家提供linux修改文件名相关的文章,这些文章可以帮助用户快速轻松地完成文件名的修改工作,大家可以免费体验。

2023.07.05

2675

7

linux系统安装教程
linux系统安装教程

linux系统是一种可以免费使用,自由传播,多用户、多任务、多线程、多CPU的操作系统。本专题提供linux系统安装教程相关的文章,大家可以免费体验。

2023.07.06

2442

7

linux查看文件夹大小
linux查看文件夹大小

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。linux怎么查看文件夹大小呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.20

1660

8

linux查看ip命令
linux查看ip命令

本专题为大家提供linux查看ip命令相关文章内容,感兴趣的朋友可以免费下载体验试试。

2023.07.20

1255

4

linux查看cpu使用率
linux查看cpu使用率

在linux的系统维护中,可能需要经常查看cpu使用率,分析系统整体的运行情况。本专题为大家带来了linux查看cpu使用率的相关文章,感兴趣的朋友千万不要错过了。

2023.07.25

1444

6

linux查找文件命令
linux查找文件命令

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.31

210

3

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
phpMyAdmin 安装文档
phpMyAdmin 安装文档

共0课时 | 0人学习

Apifox下载与安装手册
Apifox下载与安装手册

共0课时 | 0人学习

安装 Xdebug 并配置 phpstorm
安装 Xdebug 并配置 phpstorm

共1课时 | 128人学习