Metabase CLI

Metabase 附带了一些实用的 CLI 命令。要查看命令列表,请运行 Metabase jar 并紧跟 help

java --add-opens java.base/java.nio=ALL-UNNAMED -jar metabase.jar help

Metabase 将打印出可用命令的帮助文本。

api-documentation

生成一个包含所有 API 端点文档的 Markdown 文件。该文件将写入 docs/api.html

driver-methods | driver-methods _docs

打印驱动程序可实现的所有多方法的列表。添加 _docs 以包含它们的文档字符串。

config-template

生成一个包含文档和 YAML 格式示例配置文件的 Markdown 文件。该 YAML 模板包含 Metabase 设置及其默认值。Metabase 会将文件保存为 docs/configuring-metabase/config-template.md

drop-entity-ids

删除可序列化模型实例的实体 ID。这对于从 v1 序列化(x.46 及更早版本)迁移到 v2(x.47+)很有用。

dump path & options

注意:此命令已弃用。请改用 export

将 Metabase 实例序列化到目录 path 中。

选项

  • -u, --user EMAIL - 导出指定用户拥有的集合
  • -s, --state (active|all) - 当设置为 active 时,不导出已归档的实体。默认行为是 all
  • --include-entity-id - 在所有导出的实体中包含 entity_id 属性。默认值:false

dump-to-h2 h2-filename & opts

将数据从现有数据库传输到新创建的 H2 数据库,并使用指定的文件名。目标 H2 文件在导出前会被删除,除非提供了 –keep-existing 标志。

选项

  • -k, --keep-existing - 如果目标 H2 文件存在,则不删除
  • -p, --dump-plaintext - 不加密导出的内容

environment-variables-documentation

生成一个包含与配置 Metabase 相关的环境变量文档的 Markdown 文件。该命令只包含注册为 defsettings 的环境变量。有关环境变量的完整列表,请参阅 https://metabase.net.cn/docs/latest/configuring-metabase/environment-variables。

export path & options

序列化功能仅适用于 ProEnterprise 套餐(仅限自托管套餐)。

将 Metabase 实例序列化到目录 path 中。

选项

  • -c, --collection ID - 仅导出指定的 ID。使用逗号分隔多个 ID。您可以使用 eid:<...> 作为前缀传递实体 ID
  • -C, --no-collections - 不导出集合中的任何内容
  • -S, --no-settings - 不导出 settings.yaml
  • -D, --no-data-model - 不导出任何数据模型实体;对后续导出很有用
  • -f, --include-field-values - 包含字段值以及字段元数据
  • -s, --include-database-secrets - 包含数据库连接详情(明文;请谨慎使用)
  • -e, --continue-on-error - 出错时不中断执行
  • --full-stacktrace - 出错时输出完整的堆栈跟踪

help command-name | help

显示此帮助消息,列出有效的 Metabase 命令。使用 help command-name 查看特定命令的详细信息。

import path & options

序列化功能仅适用于 ProEnterprise 套餐(仅限自托管套餐)。

从目录 path 加载由 export 命令创建的序列化 Metabase 实例。

选项

  • -e, --continue-on-error - 出错时不中断执行
  • --full-stacktrace - 出错时输出完整的堆栈跟踪

load path & options

注意:此命令已弃用。请改用 import

从目录 path 加载由 dump 命令创建的序列化 Metabase 实例。

选项

  • -m, --mode (skip|update) - 冲突时更新或跳过。默认值:跳过
  • -e, --on-error (continue|abort) - 出错时中止或继续。默认值:继续

load-from-h2 | load-from-h2 h2-connection-string

将数据从现有 H2 数据库传输到由环境变量指定的新创建的 MySQL 或 Postgres 数据库。

migrate direction

运行数据库迁移。direction 的有效选项包括 upforcedownprintrelease-locks

profile

以常规方式启动 Metabase 并退出。对于分析 Metabase 启动时间很有用。

reset-password email-address

重置 email-address 用户的密码。

rotate-encryption-key new-key

轮换 Metabase 数据库的加密密钥。MB_ENCRYPTION_SECRET_KEY 环境变量必须设置为当前密钥,参数 new-key 必须是新密钥。new-key 必须至少包含 16 个字符。

remove-encryption

解密 Metabase 数据库中的数据。MB_ENCRYPTION_SECRET_KEY 环境变量必须设置为当前密钥。

seed-entity-ids

为尚未拥有实体 ID 的可序列化模型实例添加实体 ID。

version

打印 Metabase 和当前系统的版本信息。

其他实用命令

H2 SQL Shell

为 Metabase H2 数据库打开一个 SQL shell

java -cp metabase.jar org.h2.tools.Shell -url jdbc:h2:/path/to/metabase.db

阅读其他 Metabase 版本的文档。

© . All rights reserved.