---
title: 使用CLI迁移Parse应用至Back4App的详细指南
slug: docs-ch/app-migration/parse-cli-migration
description: 了解如何使用CLI工具迁移Parse应用至Back4App，包括数据库和文件迁移步骤。
image: https://www.back4app.com/_public/img/back4app-og.png
createdAt: 2024-01-26T12:59:08.613Z
---

# 使用 CLI 将您的 Parse 应用迁移到 Back4App

## 介绍

在本指南中，您将学习如何使用迁移 CLI 将您的 Parse 应用迁移到 Back4App。

迁移过程包括将数据库、云函数和文件从您当前的 Parse 应用转移到 Back4App 应用。CLI 迁移工具将帮助您进行数据库和文件的迁移。

它将获取您数据库的副本（转储文件）并在您的 Back4App 应用中恢复数据。然后将从本地文件夹中获取您的文件并将其上传到 Back4App S3 存储桶。此 CLI 迁移工具不涵盖云代码迁移，但您可以使用 [Back4App CLI](https://www.back4app.com/docs/platform/parse-cli)（其他 CLI）进行迁移，或使用仪表板手动进行迁移。

## 先决条件

:::hint{type="info"}
**要开始本教程，您需要：**

- 您自己机器上的 Parse 应用转储。
- [Node JS (>=8.0) ](https://nodejs.org/en/)和 [NPM](https://docs.npmjs.com/getting-started).
:::

## 1 - 安装我们的 CLI 工具

首先，您需要在您的机器上安装 <font color="#2166ae">`@back4app/m2b4a`</font>，如下所述：

:::BlockQuote
npm install -g @back4app/m2b4a
:::

## 2 - 开始 Parse 应用迁移

现在您将迁移您的数据库。转到您当前的 Parse 应用并下载数据库的副本。然后转到包含转储文件的文件夹并运行：

:::BlockQuote
migrate-to-back4app
:::

![](https://api.archbee.com/api/optimize/yD3zCY-NNBBIfd0uqcfR5/VpC-RFB0Yx7swgG1uDUWg_image.png)

## 3 - 访问您的账户

您可以注册或登录您的账户，并选择是否要保存您的会话。然后，下次使用此工具时，您无需再次输入您的账户凭据。

![](https://api.archbee.com/api/optimize/yD3zCY-NNBBIfd0uqcfR5/zpsCrjT1ppBqkmStGbOuu_image.png)

## 4 - 选择一个 Back4App 应用

您可以将您的 Parse 应用迁移到现有应用或新应用。

![](https://api.archbee.com/api/optimize/yD3zCY-NNBBIfd0uqcfR5/aERuzGAQUZI3LUBqZ9ux3_image.png)

如果您决定使用现有应用，请小心，您可以选择是否覆盖现有数据或仅插入新对象。

对于新应用，您必须设置一个名称并按 <font color="#2166ae">`ENTER`</font>。

## 5 - 恢复您的数据

一旦您已经在包含转储文件的文件夹中，您只需按 <font color="#2166ae">`ENTER`</font>。

![](https://api.archbee.com/api/optimize/yD3zCY-NNBBIfd0uqcfR5/zvjxl4vEjtSsmoW2XO2O3_image.png)

## 6 - 迁移您的 Parse 文件

如果您有解析文件，请浏览到文件所在的文件夹，然后按 <font color="#2166ae">`ENTER`</font> 继续。文件将自动与您的解析对象关联。

否则，只需输入 <font color="#2166ae">`n`</font> 跳过此步骤并开始恢复过程。

迁移结束时的样子如下：

![](https://api.archbee.com/api/optimize/yD3zCY-NNBBIfd0uqcfR5/W-sLU5PGCZ2RCPlEDFhEe_image.png)

![](https://api.archbee.com/api/optimize/yD3zCY-NNBBIfd0uqcfR5/CWc_z5WYj6PX87rFGP2Eb_image.png)

:::hint{type="danger"}
绝不要将这些凭据分享给任何人。您可以 [添加合作者](https://help.back4app.com/hc/en-us/articles/115000808951-How-to-add-Collaborators-to-my-app-) 到您的项目中，他们可以在 [这里](https://help.back4app.com/hc/en-us/articles/115000754772-Where-are-my-Keys-and-ID-) 获取这些密钥。
:::

## 7 - 测试您的云代码

检查 [此指南](https://www.back4app.com/docs/platform/parse-cli) 以了解如何部署您的云代码文件。

以下是您必须知道的一些信息：

1 - Back4App 使用两个主要文件夹： <font color="#2166ae">`public/`</font> 用于公共文件，如 HTML、CSS 等，以及 <font color="#2166ae">`cloud/`</font> 用于私有云代码。

2 - 在 <font color="#2166ae">`cloud/`</font> 中，Back4App 导入两个文件。一个名为 <font color="#2166ae">`app.js`</font> 用于您的自定义 API (例如 app.get(‘/my-custom-api’))，另一个是 <font color="#2166ae">`main.js`</font> 用于 Parse.Cloud 函数和作业。

3 - **非常重要！** <font color="#2166ae">`app`</font> (express.js 实例) 和 <font color="#2166ae">`Parse`</font> 变量是全局的。 **请勿在您的 package.json 中安装它们或在您的云代码中引用它们。**

4 - **请勿使用&#x20;**<font color="#2166ae">`require('express')`</font>**&#x20;或&#x20;**<font color="#2166ae">`require('parse/node')`</font>**, 只需使用 app 和 Parse 变量**。

## 8 - 将您当前的 API 连接到 Back4App 的新数据库

完成所有应用测试后，是时候将您当前的 Parse 服务器指向 Back4App 数据库。您有两种选择。第一种是将 Parse 服务器指向 Back4App 数据库，然后进行增量数据库恢复（如 **第 5 步**所述）。第二种是关闭您的 Parse 服务器，进行完整的数据库恢复，然后再次启动它，指向 Back4App 数据库。我们在这里的建议是第一种方法，这样可以避免应用的停机时间。

要继续第一种选择，请在服务器设置 > 设置 > 核心设置 > 连接字符串中复制您的 Back4App 连接字符串，并将其粘贴到您旧的 Parse 应用设置中。

现在您需要对数据进行新的转储并在您的应用中恢复它们 **（第 5 步）**, 但请不要创建新应用，而是选择 <font color="#2166ae">`是的，我想更新其中一个！`</font> 和 <font color="#2166ae">`不！只插入新 ID`</font>, 之后。这将有助于防止用户数据不一致。

完成此步骤后，您的用户将使用 Back4App 数据库，而不是旧数据库。

## 9 - 更新您的前端

现在，您需要更新前端以连接到 Back4App 应用。您可以在服务器设置 > 设置 > 核心设置部分获取您的应用 ID、密钥和 API 地址。更新您的前端/应用连接（现在指向 Back4App），并向您的用户发布新应用版本。

现在您有一个指向 Back4App API 和数据库的新应用，以及一个指向之前 Parse API 但使用 Back4App 数据库的旧应用。

## 10 - 完成过程

我们建议仅在大多数用户使用新应用版本（指向 Back4App API）时关闭旧的 Parse API。一旦您关闭旧 API，使用旧版本的用户将失去对后端的访问。

## 完成了！

现在您知道如何使用 CLI 将您的 Parse 应用迁移到 Back4App。如果您需要任何帮助或链接无法正常工作，请 [联系我们的团队！](https://www.back4app.com/support)
