代码之家  ›  专栏  ›  技术社区  ›  user557657

如何使用mongodump转储整个数据库或单个数据库?

  •  0
  • user557657  · 技术社区  · 6 年前

    我正在尝试使用replicaset中的mongodump备份mongodb数据库。我使用的脚本可以将数据库从远程转储到本地。当我试图从replicaset转储时,同样的脚本错误地说身份验证失败。

    有没有一个简单的方法,我可以有整个数据库转储,否则具体的数据库转储将首选。

    #!/bin/bash
    
    HOST="mongorep1:27017,mongorep2:27017,mongorep3:27017"
    REMOTE_DB="Products"
    LOCAL_DB="Products"
    USER="AppUser"
    PASS="password"
    
    ## DUMP THE REMOTE
    echo "Dumping '$HOST:$PORT/$REMOTE_DB'..."
    mongodump --host $HOST --db $REMOTE_DB -u $USER -p $PASS --out dump/`date +"%m-%d-%y"`
    
    echo "Done."
    

    谢谢

    1 回复  |  直到 6 年前
        1
  •  0
  •   Abhay PS    6 年前

    将replicaset与mongodump一起使用时,需要在字符串pass-to之前加前缀 --host 具有复制集名称。例如,如果您的复制集名称是 myreplicaset_name 那么它应该看起来像-

    HOST="myreplicaset_name/mongorep1:27017,mongorep2:27017,mongorep3:27017"