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