【问题标题】:MongoDB dump and restoreMongoDB 转储和恢复
【发布时间】:2019-06-27 07:16:49
【问题描述】:

我使用 docker 安装了 mongo,现在我需要进行 mongodb 转储并恢复

1) 我在哪里可以下载这两个工具?
2)我不需要安装完整的mongo,因为mongo已经使用docker安装了,我只需要下载这两个mongo工具并使用docker mongo的IP和PORT进行转储和恢复。

谢谢,
哈利

【问题讨论】:

    标签: linux mongodb docker mongodump mongorestore


    【解决方案1】:

    MongoDB 将此工具安装在核心数据库旁边,这样您就可以在容器内执行命令或在系统中安装mongod 并使用它,您可以使用以下命令获取 MongoDB 数据:

    docker exec <CONTAINER> sh -c 'exec mongodump --db somedb --gzip --archive' > dump_`date "+%Y-%m-%d"`.gz
    

    此外,您可以在没有 mongo 核心的情况下获得这些实用程序。这是 alpine-linux 的示例包:mongodb-tools。对于其他发行版,您可以自己制作:mongodb-tools

    【讨论】:

    • 我同意我们可以使用 docker exec,但我需要从另一台机器连接到这个 docker,对于这个答案,我提供了赞成票??
    • @Harry 那么为什么不启动另一台只有实用程序的机器来获取导出的数据呢?我的意思是在 docker 上创建一个新的 mongodb 并将其用于导出和导入。
    • 感谢您的想法,但有没有办法只获得 mongodump 和 mongorestore 工具?这样我就不想在其他机器上依赖docker了
    • 我会接受你的回答,我有一个澄清,docker exec 如何为 mongorestore 工作? docker exec f1d566 sh -c 'exec mongorestore --host 172.17.0.2 --port 27017 /home/test/mongo/dump_2019-02-03.gz' - 此命令失败并出现错误:失败:mongorestore target '/home /test/mongo/dump_2019-02-03.gz' 无效:stat /home/test/mongo/dump_2019-02-03.gz:没有这样的文件或目录
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-19
    • 1970-01-01
    • 2013-09-26
    • 1970-01-01
    • 2014-08-10
    • 1970-01-01
    相关资源
    最近更新 更多