2016-08-04 136 views
3

我正在尋找適用於MongoDB的數據遷移工具, 類似於Liquibase或Flyway,它與Mongo 3.0兼容。MongoDB的數據遷移工具

有什麼建議嗎?

謝謝。

+0

如果你想「手工」遷移下載MongoChef,你可以選擇數據庫並複製並粘貼到其他地方 – libik

回答

0

Mongeez似乎是一個死的項目。您可以嘗試使用Mongobee

0

有一個很好的工具叫做MongoSyphon,由Mongo的一位諮詢工程師開發,其中包括連接等,並且具有高度可配置性。

1

我構建了一個快速命令行工具,旨在部署過程中更新數據庫。

它使用dotnet核心並運行在windows/linux/macos上。

截至目前,它允許導出/導入/刪除/下降和評估任何JavaScript。 https://github.com/Socialtalents/SocialTalents.MongoSync/

PS:它是3天,所以萬一你找到一個bug請讓我知道。

0

我在使用MongoDB時需要使用Mongobee,並且需要類似於flyway的東西。這項工作是否容易配置?

添加Maven的依賴

<dependency> 
    <groupId>com.github.mongobee</groupId> 
    <artifactId>mongobee</artifactId> 
</dependency> 

您需要在您的上下文xml文件來創建Mongobee豆

<bean id="mongobee" class="com.github.mongobee.Mongobee"> 
<constructor-arg ref="mongo"/> 
<property name="dbName" value="${mongo.databaseName}"/> 
<property name="enabled" value="true"/> 
<property name="changeLogsScanPackage" value="basepackagewherechangesetispresent"/> 

現在添加變更類

@ChangeLog(order = "1") 
public class DatabaseChangeLog { 

@ChangeSet(order = "101", id = "somelogicalnameforthischangeset", author = "nameofpersonwhodidthischange") 
public void setupSeedData(MongoTemplate mongoTemplate) { 
    // run your datasetup, prefill,migration here. 
} 

就如同遷徙路線它還維護模式版本表,以便相同的更改集不會再次以相同的方式運行 環境。