本文介绍 Meilisearch 的两种备份方法:快照(snapshots)和转储(dumps)。

快照

快照是 Meilisearch 数据库的精确副本,默认存储在 ./data.ms 目录中。使用快照可以快速高效地备份您的实例

快照中的文档已经建立好索引并可直接使用,能大幅提高导入速度。但快照在不同版本的 Meilisearch 之间不兼容,且文件体积通常比转储大得多。

简而言之,快照是一种安全措施:当实例出现问题时,您可以快速恢复并重启数据库。您还可以设置定期创建快照的计划任务。

转储

转储不像快照那样是数据库的精确副本,它更像是一个蓝图,Meilisearch 后续可以用它从头开始重建整个实例。

导入转储需要 Meilisearch 重新为所有文档建立索引。这个过程会消耗大量时间和内存,其消耗量与数据库大小成正比。与快照相比,导入转储是一个缓慢且低效的操作。

但另一方面,转储不与特定 Meilisearch 版本绑定。这意味着当您升级 Meilisearch 时,转储是迁移数据的理想选择。

使用转储将数据从旧版 Meilisearch 迁移到新版。不要将数据从新版迁移到旧版 Meilisearch。

例如,您可以将 Meilisearch v1.2 生成的转储导入 v1.6 而不会出现问题。但如果将 v1.7 生成的转储导入 v1.2 实例,则可能导致意外行为。

快照(Snapshots)与转储(Dumps)对比

快照和转储都是数据备份方式,但它们的用途不同。

快照效率很高,但不能在不同版本的 Meilisearch 之间移植。快照适用于定期数据备份。

转储可以在不同版本的 Meilisearch 之间移植,但效率不高。在升级到新的 Meilisearch 版本时使用转储。