如何使用 Studio 3T 高效迁移数据库和集合
SashiDo 为您提供的一大好处是完全访问您的数据库。您不仅可以从我们超级用户友好的数据库浏览器中浏览您的记录,还可以进一步使用您选择的工具直接连接到您的 MongoDB。
在我们的YouTube 视频教程系列中,我们已经向您介绍了 Studio 3T - 一个易于操作、非常快速且文档非常完善的 MongoDB 客户端。在那里,我们演示了如何将集合导入和导出到 JSON。
尽管如此,我们经常会遇到很多关于如何迁移到 SashiDo 的问题,今天,我将详细介绍如何使用 Studio 3T 轻松迁移数据。迁移时导出/导入数据的最佳解决方案将是在 BSON 中,因为 MongoDB 在后台以二进制编码格式表示 JSON 文档。
我将逐步指导您完成该过程,但首先,让我分享一下 Studio 3T 的原因:
Studio 3T 是一个功能齐全的 MongoDB IDE,允许用户探索他们的本地数据库或使用分片和副本集。它与 MongoDB 的当前和旧版本完全兼容,并具有一组用于与数据库交互的有用功能,包括 SQL 查询。客户可享受 30 天的免费试用期,学生、教师、非营利组织和初创企业可享受折扣。 :)
最重要的是,我们为所有 SashiDo 客户安排了折扣,因为我们希望您能够以最方便、最简单的方式与您的数据库进行交互。 只需联系 Studio 3T 的 Angelo 并传递 SD0619 促销代码,您将获得 20% 的折扣。多么酷啊?!您可以在此处从下载 Studio 3T。
现在,当我们了解我们的工具后,让我们从连接到您的 SashiDo MongoDB 开始吧!
连接到您的 SashiDo 数据库
Studio 3T 连接管理器使您几乎可以立即链接到您的 MongoDB。有几个选项可用于启动连接,但出于本教程的目的,我将重点介绍使用 MongoDB URI。您的 SashiDo 数据库的 URL 可以在应用程序的仪表板 -> 应用程序设置 -> 安全和密钥中找到。只需单击显示数据库 URL 并复制地址。
[
](https://res.cloudinary.com/practicaldev/image/fetch/s--Gtaj5sxd--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://media-blog.sashido .io/content/images/2019/07/DB_URI.png)
接下来,打开 Studio 3T 并按下全局工具栏中的Connect按钮。这将打开连接管理器。单击New Connection以启动新连接窗口。它会显示几个选项供您选择。从 URI 中选择并粘贴已复制的连接字符串。使用OK按钮确认。
最后但并非最不重要的一点是,给新的 Connection 一个易于识别的名称并点击Save。DB 现在显示在 Connection Manager 中,剩下的就是按Connect
[
](https://res.cloudinary.com/practicaldev/image/fetch/s--D2CNY3wi--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://media-blog.sashido .io/content/images/2019/07/connectDbFinal.gif)
很酷的是,Studio 3T 会记住该连接并自动保存,因此下次您只需单击即可连接!
连接后,您可以开始探索 Studio 3T 提供的所有强大功能 - 可视化查询生成器、SQL 查询、就地数据编辑、任务以及更多简洁的选项。在本教程中,我们将使用 Import 和 Export 属性,使您能够以指定格式迁移数据。支持所有 JSON、CSV、BSON 和 SQL,以及导入/导出到另一个集合。
导出到 BSON(mongodump)
- **首先打开导出向导!**有两种方法可以做到:
-
按全局工具栏中的导出。
-
右键单击任何服务器、数据库或集合,然后选择导出数据。
- 选择导出格式。我们将选择 mongodump 作为迁移示例,因为这是导出数据库/集合以及索引规则的二进制格式,因此最适合迁移。
[
](https://res.cloudinary.com/practicaldev/image/fetch/s--I6eO0if---/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://media-blog. sashido.io/content/images/2019/07/dumpFinal.png)
在下一个屏幕上选择 BSON - mongodump 文件夹。
[
](https://res.cloudinary.com/practicaldev/image/fetch/s--R2-wyH79--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://media-blog .sashido.io/content/images/2019/07/dump2.png)
-
选择要导出数据的文件夹。通过选择您将导出数据库的文件夹继续前进。请记住,mongodump 文件夹具有特定的结构。这意味着 Studio 3T 将自动在所选文件夹中创建一个带有转储数据库的子文件夹,该文件夹将具有现有的数据库名称。如果您想在稍后阶段导入此数据库,则需要使用新的数据库名称重命名子文件夹。
-
按下
Start Export按钮 并等待几秒钟或几分钟,具体取决于数据库大小。看看整个过程是多么简单:
[
](https://res.cloudinary.com/practicaldev/image/fetch/s--4EcvbbqI--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://media-blog.sashido .io/content/images/2019/07/exportFinale.gif)
让我们继续看看导入数据是多么容易。 :)
从 BSON 导入(mongorestore)
好吧,这里的过程与我们已经经历的过程非常相似。
- 连接到新的数据库,您将在其中导入以前导出的数据并获取其名称。您将需要该名称来重命名已转储数据库的子文件夹,记得吗?
[
](https://res.cloudinary.com/practicaldev/image/fetch/s--pomLH-i9--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://media-blog .sashido.io/content/images/2019/07/copyName.gif)
-
分别重命名已经存在的mongodump子文件夹。
-
打开导入向导 - 使用以下方法,类似于导出方法:
-
右键单击特定集合/数据库并选择导入集合
-
从全局工具栏 -> 导入
- 为 Import Option 选择 BSON - mongodump 文件夹,然后点击 OK。
然后从 Select mongodump folder to import 字段中选择转储数据库的根文件夹。即将导入的所有收藏将显示在屏幕右侧。
- 只需单击
Execute按钮即可开始导入收藏集。
[
](https://res.cloudinary.com/practicaldev/image/fetch/s--R6lmvDs0--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://media-blog.sashido .io/content/images/2019/07/ImportGoodQlty.png)
就这么简单!亲眼看看使用 Studio 3T 导入数据库是多么简单和完美:
[
](https://res.cloudinary.com/practicaldev/image/fetch/s--fFp8PoBw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://media-blog.sashido .io/content/images/2019/07/importFinale.gif)
Voilà! 导入已完成,您可以直接从超级用户友好的 SashiDo DB 浏览器中玩转数据库,这让每项任务都变得轻而易举。
注意!如果您是 Windows 用户,请注意 Windows 具有特定的通用命名约定和字符限制,在某些情况下可能与 MongoDB 命名系统存在争议。按照这种思路,请注意具有指针或关系类型列的数据库,因为这些列可能无法正确导出/导入。使用 Studio 3T 时另一个棘手的情况是 mongodump 在 .gzip 中创建 BSON 存档,这与 Windows 不兼容。
快乐编码!
更多推荐
所有评论(0)