迁移到 Metabase 云版 - Metabase 49 或更低版本
如果您运行的是 Metabase 50 或更高版本,请查看此指南。
从自托管 Metabase 迁移到 Metabase 云版将保留您现有的 Metabase 中的所有问题、仪表板、人员、设置——所有一切。
请放心,您不会丢失任何工作,如果遇到困难,我们随时为您提供帮助。
准备迁移
了解限制
Metabase 云版存在一些可能影响您迁移的限制。
确认您拥有正确的访问权限
为了进行迁移,您需要拥有对自托管 Metabase 环境的 shell 访问权限,并且您的 Metabase 环境需要能够访问互联网。
安排停机时间
务必让您的用户知道您的 Metabase 实例在迁移期间将不可用(最好在非工作时间)。迁移过程通常不到 15 分钟。
关闭您的自托管 Metabase 实例
您只需停止 Metabase JAR 进程或 Docker 容器,以确保您的 Metabase 已关闭。这样做的目的是防止用户在迁移期间创建更多可能导致实例处于不一致状态的问题或仪表板。
备份您的应用数据库
万一出现问题,您需要一个备份。请参阅备份 Metabase 应用数据。
将您的 Metabase 迁移到 Metabase 云版
这个过程本身大部分是自动化的,但它对您的实例来说是独一无二的。让我们来一步步了解它。
创建 Metabase 云版实例
您将需要一个 Metabase 云版实例来迁移数据。如果您尚未注册,请注册免费的 14 天 Metabase 云版试用。
如果您已有 Metabase 云版实例,则可以跳过此步骤。
遵循迁移说明
访问您的 Metabase 商店账户,然后点击启动迁移。
您将获得一个用于下载管理迁移脚本的命令。对于 Metabase JAR 有一个命令,如果您通过 Docker 运行 Metabase,则有另一个不同的命令。
在执行迁移脚本之前,您可能需要设置环境变量以匹配您的应用数据库的常用配置。
- Docker:环境变量将已设置好。
- JAR:通过在运行 JAR 的服务器上运行
MB_DB_CONNECTION_URI=xxxxx migration_script.sh
来设置环境变量。 - Heroku:请遵循运行脚本的几个额外步骤。
在您的自托管环境中执行脚本
警告:如果您在 Metabase 云版实例中创建了任何问题或仪表板,它们将在您上传现有自托管 Metabase 实例的应用数据时被覆盖。
该脚本会将您的应用数据上传到新的 Metabase 云版实例。如果一切顺利,脚本将打印 Done!
。
如果出现任何问题,请按照脚本输出的提示操作。如果仍然卡住,请给我们发送电子邮件,我们将帮助您进行故障排除。
迁移到 Metabase 云版后
成功上传后,一些收尾工作和重启会在几分钟内自动完成,然后您就可以登录您闪亮的新 Metabase 云版实例了。您应该会看到所有的查询和仪表板,就像您在自托管实例中看到的一样。
- 如果您使用 Google 登录,您需要前往 Google Developers Console 并将您的新 Metabase 云版 URL 添加到 Google Auth 客户端 ID 的授权 JavaScript 来源中。
- 对于使用 SAML SSO 的专业版和企业版客户,您需要更新身份提供商的设置,将重定向 URL 和基本 URL 更改为您的新 Metabase 云版 URL,否则您的身份提供商仍会将用户重定向到您旧的(已关闭的)Metabase 实例。有关如何设置这些 URL 的详细信息,请参阅使用 SAML 进行身份验证。
告知您的团队新的 Metabase 地址
一旦您确认一切正常,就可以告诉您的团队新的 Metabase 云版 URL 地址,他们应该使用该地址登录 Metabase。用户应该能够像往常一样登录,并从上次离开的地方继续工作。
如果您在应用程序中嵌入 Metabase,请务必更新您的代码以反映新的 URL。
淘汰旧的 Metabase
虽然您应该已经关闭了旧的 Metabase 实例,但如果您通过第三方自托管,请务必清理并取消任何服务,以避免不必要的费用(例如旧备份的存储费用)。
就这样!
从现在起,我们将负责您的 Metabase 并使其保持最新。欢迎来到 Metabase 云版!
需要帮助吗?
如果您有任何问题,请给我们发送电子邮件。