4

MongoDB java驱动程序中是否有可能备份和恢复数据库?

我现在的解决方案(只需执行命令):

public void makeBackUp(String path) {
    try {
        Runtime.getRuntime().exec("mongodump --out " + path);
    } catch (IOException ex) {
        Logger.getLogger(MongoDB.class.getName()).log(Level.SEVERE, null, ex);
    }

}

public void restore(String backUpPath) {
    try {
        Runtime.getRuntime().exec("mongorestore " + backUpPath);
    } catch (IOException ex) {
        Logger.getLogger(MongoDB.class.getName()).log(Level.SEVERE, null, ex);
    }
}

提前致谢。

4

1 回答 1

4

目前的简短答案是否定的。这些命令只能从命令行调用。您可能会考虑从所有集合中获取所有数据,但预计会很慢。您可以在此处阅读有关此的讨论。

[ UPDATE]

但是,您可以从 java 中的命令行调用mongodump和命令。mongorestore这意味着您必须确保这两个命令都安装在运行代码的机器上。

于 2016-07-20T14:24:47.510 回答