备份 Metabase
通过备份应用程序数据,可以避免丢失所有应用程序数据(包括所有问题、仪表盘、集合等)。
Metabase 使用单个 SQL 数据库来存储所有运行时应用程序数据,因此您只需要备份该数据库即可。如果出现问题(例如在升级过程中),您可以使用该备份来恢复 Metabase 安装。
备份默认的 H2 数据库
如果您在启动 Metabase 时没有使用环境变量指定应用程序数据库,Metabase 将在其目录中创建一个嵌入式的 H2 数据库。
但是,如果您现在拥有想要保留的问题和仪表盘,则应考虑在升级前迁移到生产级数据库。
如果您仅将 Metabase 用于个人用途并希望保留您的应用程序数据,请执行以下操作。
如果您正在运行 Metabase Docker 镜像
如果您正在运行 Docker,您应该已经切换到生产级数据库。
在迁移到生产应用程序数据库之前,您应该将 H2 应用程序数据库文件从 Docker 容器中复制出来。例如,如果容器名为 metabase,您可以运行:
docker cp metabase:/metabase.db/metabase.db.mv.db ./
以上命令会将数据库文件复制到您运行该命令的目录。您还可以创建此 H2 文件的副本,并使用它将数据迁移到生产级数据库。请参阅从 H2 迁移。
如果您正在运行 Metabase JAR
- 导航到您的 Metabase 目录。
- 如果您的 Metabase 正在运行,请停止 Metabase 进程。您可以关闭终端或使用 CTRL-C 终止进程。如果您将进程作为服务运行,请停止该服务。
- 复制应用程序数据库文件(名为
metabase.db.mv.db)并将其保存在安全的地方。仅此而已。 - 重新启动 Metabase:
java --add-opens java.base/java.nio=ALL-UNNAMED -jar metabase.jar或重新启动服务。
Amazon RDS 用于应用程序数据库
Amazon 有其关于如何备份和还原 RDS 数据库的最佳实践,因此我们将其内容作为参考。我们建议您启用自动 RDS 备份。
相关说明可在Amazon RDS 用户指南中找到。
自托管 PostgreSQL 数据库
如果您正在自托管 PostgreSQL 数据库,只需遵循 PostgreSQL 关于备份数据库的说明即可。
只要您拥有 Metabase 数据库的转储,一切就绪。
阅读其他版本的 Metabase 的文档。