如何使用 mongodump 转储整个数据库或单个数据库?
How can I dump whole database or individial database using mongodump?
我正在尝试使用来自副本集的 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."
谢谢
当将复制集与 mongodump 一起使用时,您需要在传递给 --host
的字符串前加上复制集名称作为前缀。例如,如果你的副本集名称是 myreplicaset_name
那么它应该看起来像 -
HOST="myreplicaset_name/mongorep1:27017,mongorep2:27017,mongorep3:27017"
我正在尝试使用来自副本集的 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."
谢谢
当将复制集与 mongodump 一起使用时,您需要在传递给 --host
的字符串前加上复制集名称作为前缀。例如,如果你的副本集名称是 myreplicaset_name
那么它应该看起来像 -
HOST="myreplicaset_name/mongorep1:27017,mongorep2:27017,mongorep3:27017"