MeiliSearch

MeiliSearch

在 Ubuntu 系统中部署和使用 MeiliSearch 是一个高效的选择,MeiliSearch 是轻量级、高性能的开源搜索引擎,支持全文检索、实时索引、中文分词(需额外配置)等特性。以下是完整的部署、配置和使用指南

一、环境准备

确保 Ubuntu 系统已更新并安装依赖:

# 更新系统包sudoaptupdate&&sudoaptupgrade -y# 安装必要依赖(如 curl、unzip)sudoaptinstall-ycurlunzipwget

二、安装 MeiliSearch

方式 1:快速安装(推荐)

通过官方脚本一键安装(自动适配系统架构):

curl-L https://install.meilisearch.com|sh
方式 2:手动下载(可选,指定版本)
# 下载最新版本(替换版本号为需要的,如 v1.7.0)MEILI_VERSION="v1.29.0"curl-O -L"https://github.com/meilisearch/meilisearch/releases/download/${MEILI_VERSION}/meilisearch-linux-amd64"# 解压并赋予执行权限chmod+x meilisearch-linux-amd64# 移动到系统可执行目录(方便全局调用)sudomvmeilisearch-linux-amd64 /usr/local/bin/meilisearch
验证安装
meilisearch --version# 输出类似:meilisearch 1.29.0

三、启动 MeiliSearch

1. 临时启动(测试用)
# 直接启动(默认端口 7700,无密钥,仅本地访问)meilisearch
  • 访问地址:http://localhost:7700
  • 注意:临时启动无密钥,重启后数据丢失,仅用于测试。
2. 生产环境启动(推荐)

生产环境需配置主密钥数据持久化允许外部访问

# 设置主密钥(自定义,用于鉴权)exportMEILI_MASTER_KEY="你的安全密钥(如:MyStrongMasterKey123!)"# 启动(指定数据存储目录、允许外部访问、后台运行)meilisearch\--db-path /var/lib/meilisearch\# 数据持久化目录--http-addr0.0.0.0:7700\# 允许外部访问(所有IP)--env production\# 生产环境模式>/var/log/meilisearch.log2>&1&# 日志输出到文件,后台运行
3. 配置系统服务(开机自启)

为了保证 MeiliSearch 稳定运行并开机自启,创建 systemd 服务:

# 创建数据目录和日志目录sudomkdir-p /var/lib/meilisearch /var/log/meilisearchsudochown$USER:$USER/var/lib/meilisearch /var/log/meilisearch# 创建服务文件sudovim/etc/systemd/system/meilisearch.service

粘贴以下内容(替换MEILI_MASTER_KEY为你的密钥):

[Unit] Description=MeiliSearch After=network.target [Service] Type=simple User=root Group=root Environment="MEILI_MASTER_KEY=MyStrongMasterKey123!" ExecStart=/usr/local/bin/meilisearch \ --db-path /var/lib/meilisearch \ --http-addr 0.0.0.0:7700 \ --env production Restart=on-failure RestartSec=5s StandardOutput=append:/var/log/meilisearch.log StandardError=append:/var/log/meilisearch.log [Install] WantedBy=multi-user.target

保存并退出,然后启动服务:

# 重新加载 systemdsudosystemctl daemon-reload# 启动服务sudosystemctl start meilisearch# 设置开机自启sudosystemctlenablemeilisearch# 查看状态sudosystemctl status meilisearch

四、基本使用(API/控制台)

1. 访问 Web 控制台

启动后,访问http://你的服务器IP:7700,输入主密钥即可进入可视化控制台,支持索引管理、数据导入、搜索测试等。

2. API 操作示例(curl)
(1)创建索引
curl\-X POST'http://localhost:7700/indexes'\-H'Content-Type: application/json'\-H"Authorization: Bearer 你的主密钥"\-d'{ "uid": "books", "primaryKey": "id" }'
(2)添加文档
curl\-X POST'http://localhost:7700/indexes/books/documents'\-H'Content-Type: application/json'\-H"Authorization: Bearer 你的主密钥"\-d'[ { "id": 1, "title": "Ubuntu 实战指南", "author": "张三", "content": "Ubuntu 系统管理、部署、优化全攻略" }, { "id": 2, "title": "MeiliSearch 中文使用教程", "author": "李四", "content": "轻量级搜索引擎 MeiliSearch 快速上手" } ]'
(3)搜索文档
curl\-X GET'http://localhost:7700/indexes/books/search?q=Ubuntu'\-H"Authorization: Bearer 你的主密钥"

五、中文分词支持

MeiliSearch 默认对中文分词支持有限,需安装中文分词插件(基于jieba):

1. 安装插件依赖
# 安装 Python 和 pipsudoaptinstall-y python3 python3-pip# 安装 jieba 分词库pip3installjieba meilisearch-python
2. 使用 Python 脚本处理中文索引

示例脚本(meili_cn_tokenizer.py):

importjiebafrommeilisearchimportClient# 初始化客户端client=Client('http://localhost:7700','你的主密钥')# 获取索引index=client.index('books')# 配置中文分词(自定义分词器)index.update_settings({"tokenizer":{"locale":"zh","custom":{"zh":lambdatext:list(jieba.cut(text))}}})# 重新添加文档(让分词生效)documents=[{"id":1,"title":"Ubuntu 实战指南","author":"张三","content":"Ubuntu 系统管理、部署、优化全攻略"},{"id":2,"title":"MeiliSearch 中文使用教程","author":"李四","content":"轻量级搜索引擎 MeiliSearch 快速上手"}]index.add_documents(documents)

运行脚本:

python3 meili_cn_tokenizer.py

六、常见问题排查

  1. 端口无法访问:检查防火墙/安全组是否开放 7700 端口:
    # Ubuntu 防火墙开放 7700 端口sudoufw allow7700/tcpsudoufw reload
  2. 数据丢失:确认启动时指定了--db-path,且目录权限正确。
  3. 权限错误:确保运行 MeiliSearch 的用户对数据目录有读写权限。

七、停止/卸载 MeiliSearch

1. 停止服务
sudosystemctl stop meilisearch
2. 卸载
# 移除二进制文件sudorm/usr/local/bin/meilisearch# 移除服务文件sudorm/etc/systemd/system/meilisearch.servicesudosystemctl daemon-reload# 移除数据和日志(可选)sudorm-rf /var/lib/meilisearch /var/log/meilisearch.log

以上就是 Ubuntu 系统中 MeiliSearch 的完整部署和使用指南,如需更复杂的配置(如集群、HTTPS、自定义分词),可参考 MeiliSearch 官方文档。

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

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

相关文章

企业微信开发总卡壳?试试cpolar,回调调试超顺畅

前言 企业微信开发中,回调功能用于接收服务器的通知和数据,比如审批结果、打卡信息等,是实现消息推送、OAuth2 授权等功能的关键。它适用于企业 IT 人员、开发者,能帮助企业搭建内部业务系统与企业微信的连接,优点是能…

2025年年终GPU服务器公司推荐:基于总拥有成本与系统演化能力的深度评估,5家实力厂商聚焦 - 十大品牌推荐

在人工智能与高性能计算需求持续爆发的今天,企业部署GPU服务器已从“技术尝鲜”转变为支撑核心业务的“战略必需”。然而,面对市场上纷繁复杂的供应商、从国际巨头到本土厂商的众多选择,决策者普遍陷入焦虑:如何确…

14. UGUI屏幕适配

1.基础适配 2.异形屏适配1.基础适配 public class SmartCanvasAdapter : MonoBehaviour {[SerializeField] private CanvasScaler canvasScaler;[SerializeField] private Vector2 designResolution new Vector2(1080, 2340);private float lastScreenWidth;private float las…

2025电厂水处理计量泵推荐榜:聚焦可靠性,助力机组稳定运行 - 优质品牌商家

2025电厂水处理计量泵推荐榜:聚焦可靠性,助力机组稳定运行电厂作为能源供应核心,水处理系统的化学配比直接影响机组安全——缓蚀剂、阻垢剂的精确添加,能防止锅炉结垢、管道腐蚀,避免停机损失。而计量泵作为“化学…

大二计算机生的Vue.js高分学习笔记:从课程作业到实习储备

从入门到上手:我的Vue.js学习之旅与实用心得 作为一名计算机专业大二学生,在刚结束的 Web 前端课程设计中,我曾因用原生 JavaScript 开发 “学生课程信息管理页面” 栽了跟头 —— 光是实现表单提交和数据渲染就写了 200 多行 DOM 操作代码&…

11、Domino 与 DB2 使用指南:用户注册与数据库安装全解析

Domino 与 DB2 使用指南:用户注册与数据库安装全解析 在企业级应用中,Domino 和 DB2 是两款非常重要的工具。Domino 可用于用户和组的管理,而 DB2 则提供强大的数据库支持。下面将详细介绍如何在 Domino 环境中进行用户注册,以及在 Linux 系统上安装和配置 DB2 数据库。 …

​​HeapDump​​在线工具:告别JVM参数烦恼

逛社区发现一个在线工具 HeapDump , 地址 https://opts.console.heapdump.cn/ 。它能帮助Java开发者快速生成JVM参数配置,解决手动配置的痛点。 工具核心能力 由前阿里资深JVM专家开发,专为解决Java服务部署时配置-Xms、-Xmx等参数的难题。根据输入的机…

【深度解析】Nordic nRF54L15:低功耗蓝牙5.3 SoC的破局之道与应用创新

​ 在万物互联的浪潮中,Nordic 推出的nRF54L15凭借蓝牙5.3+Thread/Zigbee多协议与Cortex-M33内核的黄金组合,成为物联网(IoT)与可穿戴设备领域的明星芯片。深圳动能世纪将从技术特性、典型应用场景及开发实践三个维…

「上一篇组件的Vue3 版本代码」以及「补充后端接口对接逻辑(如 Axios 请求、参数传递)」

文章目录一、Vue3 TypeScript 版本代码(完整优化版)二、后端接口对接逻辑(Axios 实战版)1. 安装依赖2. 创建接口请求工具(api/product.ts)3. 组件中对接接口(替换模拟数据)4. 后端接…

2025年年终市场认证公司推荐:从权威资质到用户口碑全方位盘点,5家实测表现优异机构清单 - 十大品牌推荐

在全球品牌竞争日益注重合规与证据支撑的今天,企业寻求第三方权威机构进行市场地位认证已成为标准动作。然而,面对市场上众多的咨询与认证公司,决策者常常陷入困惑:如何辨别哪些机构具备真正的权威资质?其出具的报…

59、本地安全管理与审计指南

本地安全管理与审计指南 在系统管理中,本地安全管理至关重要,它涉及用户访问审计、资源限制设置以及特殊权限文件的管理等多个方面。以下将详细介绍相关的管理和审计方法。 1. 用户访问审计 在很多情况下,我们需要查看系统用户的访问情况,比如排查潜在的安全漏洞、为公司…

43、Linux 用户与组管理全解析

Linux 用户与组管理全解析 1. 系统登录与认证 在 Linux 系统中,要获得 BASH shell 访问权限,必须使用有效的用户名和密码登录,这个过程就是认证。系统会将用户名和密码与包含所有用户账户信息的系统数据库进行比对。 用户账户信息通常存储在两个文件中: /etc/passwd 和…

金融风险的黄金标准错了吗?一个可能存在70年的模型缺陷

引言:撼动现代金融基石的疑问如果过去这70年里,整个金融世界都在用的那个衡量风险的黄金标准,从根上就错了,会怎么样?这个问题听起来或许有些危言耸听,但一篇新近发表的学术论文正是在对这个现代金融的基石…

iCraft Editor 终极指南:从零开始构建专业3D架构图

iCraft Editor 终极指南:从零开始构建专业3D架构图 【免费下载链接】icraft iCraft Editor - Help you easily create excellent 3D architecture diagrams 项目地址: https://gitcode.com/gh_mirrors/ic/icraft 想要将复杂的技术架构从平面图纸升级为立体可…

如何选择靠谱的市场认证公司?2025年年终最新服务商评估方法论及5家专业机构推荐! - 十大品牌推荐

在品牌竞争日益白热化的今天,第三方市场认证已成为企业建立信任、支撑宣传、辅助决策的关键环节。然而,面对市场上众多的认证与研究机构,决策者常常陷入困惑:如何辨别其专业性与权威性?哪些机构的报告能真正经得起…

12、《Lotus Domino 6 与外部数据库集成指南》

《Lotus Domino 6 与外部数据库集成指南》 在当今的数据驱动世界中,将企业应用程序与外部数据库集成是提高效率和数据利用率的关键。本文将详细介绍如何使用 Lotus Domino 6 与 DB2 和 MySQL 等外部数据库进行集成,包括从访问外部数据到创建应用程序的具体步骤。 1. 使用 D…

44、Linux 系统用户与组管理及打印、日志操作全解析

Linux 系统用户与组管理及打印、日志操作全解析 1. 用户账户管理 在 Linux 系统中,用户账户管理是一项基础且重要的任务。以下将介绍如何进行用户账户的删除、创建以及权限相关的操作。 1.1 删除用户账户 删除用户账户可以使用 userdel 命令。例如,要删除用户 bobg 的…

明纬S-50-24开关电源电路技术解析与应用指南

明纬S-50-24开关电源电路技术解析与应用指南 【免费下载链接】明纬S-50-24开关电源电路图 明纬S-50-24开关电源电路图本仓库提供了一份名为“明纬S-50-24开关电源电路图.pdf”的资源文件下载 项目地址: https://gitcode.com/Open-source-documentation-tutorial/bd542 明…

60、深入理解与配置 SSH:安全远程访问的全面指南

深入理解与配置 SSH:安全远程访问的全面指南 1. SSH 基础认知 在过去,Telnet 是 Linux 和 Unix 系统中常用的远程文本模式登录协议。然而,Telnet 严重缺乏安全特性。近年来,SSH 逐渐流行起来,成为了首选的远程登录工具。SSH 不仅能实现远程登录,还能处理类似 FTP 的文件…

SSM物资出库、报废、库存盘点子系统2kqtx(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面

系统程序文件列表系统项目功能:仓管员,物资盘点,出库单,报废单SSM物资出库、报废、库存盘点子系统开题报告一、课题背景与意义1.1 课题背景在现代企业与机构的运营管理中,物资管理作为核心环节之一,直接影响着资源利用效率、运营成本控制与业…