news 2026/4/16 12:18:03

MeiliSearch

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
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 官方文档。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/15 8:10:29

终极s4cmd使用指南:让你的S3操作速度提升100倍!

终极s4cmd使用指南:让你的S3操作速度提升100倍! 【免费下载链接】s4cmd Super S3 command line tool 项目地址: https://gitcode.com/gh_mirrors/s4/s4cmd 想要大幅提升Amazon S3存储的操作效率吗?s4cmd这个超级S3命令行工具绝对值得你…

作者头像 李华
网站建设 2026/4/10 23:20:02

Type-C保温杯如何实现精准PD协议取电

你是否曾在寒冷的冬日渴望一杯热饮,却苦于没有热水源?又是否曾因传统保温杯的局限而烦恼?如今,随着Type-C智能保温杯的出现,这些问题都迎刃而解。这款融合传统保温与现代快充技术的产品,正悄然改变我们的饮…

作者头像 李华
网站建设 2026/4/12 11:23:32

程序员必须知道的端口

程序员必须知道的端口‌20/21‌ - FTP文件传输协议(数据/控制)‌22‌ - SSH安全远程登录‌23‌ - Telnet远程登录(不加密,已过时)‌25‌ - SMTP简单邮件传输协议‌53‌ - DNS域名系统服务‌80‌ - HTTP超文本传输协议‌…

作者头像 李华
网站建设 2026/4/14 15:23:40

终极指南:如何在任意Windows电脑上使用三星笔记完整方案

终极指南:如何在任意Windows电脑上使用三星笔记完整方案 【免费下载链接】galaxybook_mask This script will allow you to mimic your windows pc as a Galaxy Book laptop, this is usually used to bypass Samsung Notes 项目地址: https://gitcode.com/gh_mir…

作者头像 李华
网站建设 2026/4/3 6:37:24

智慧职教学习自动化脚本:5大核心功能深度解析与实战指南

智慧职教学习自动化脚本:5大核心功能深度解析与实战指南 【免费下载链接】hcqHome 简单好用的刷课脚本[支持平台:职教云,智慧职教,资源库] 项目地址: https://gitcode.com/gh_mirrors/hc/hcqHome 还在为职业教育平台的重复性学习任务而烦恼吗?这款…

作者头像 李华