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

时间:2018-11-27 14:59:48

标签: mongodb mongodb-replica-set

我正在尝试使用来自副本集的mongodump备份mongoDB数据库。我正在使用的脚本可以很好地将数据库从远程转储到本地。相同的脚本错误指出,当我尝试从副本集转储时认证失败。

有没有一种简单的方法可以使整个数据库转储,否则将首选特定的数据库转储。

#!/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 个答案:

答案 0 :(得分:0)

将副本集与mongodump一起使用时,需要使用副本集名称为传递到--host的字符串添加前缀。例如,如果您的副本集名称为myreplicaset_name,则其外观应类似于-

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