我应该使用什么命令来创建我的数据库的MongoDB转储?


当前回答

下面的命令将工作,采取mongo db转储。

mongodb -d -o

在Windows上:试试这个,其中c:\ mongodb是转储文件的位置, 它将创建json格式的元数据,并以bson格式进行备份

C:\MongoDB\bin> MongoDB -d -o

其他回答

编辑:根据MongoDB v4.4.2最新版本更新的命令

出口

mongodump -d <database name> -o <backup-folder>

进口

mongorestore -d <database name> --dir <backup-folder>

对特定db进行mongodb备份,使用bin sh命令删除7天前的备份

#!/bin/bash

MONGO_DATABASE="nexgtv_16"
APP_NAME="test"
MONGO_HOST="127.0.0.1"
MONGO_PORT="27017"
TIMESTAMP=`date +%F-%H%M`
MONGODUMP_PATH="/usr/bin/mongodump"
BACKUPS_DIR="/home/mongodbbackups/backups/$APP_NAME"
BACKUP_NAME="$APP_NAME-$TIMESTAMP"
$MONGODUMP_PATH -d $MONGO_DATABASE
mkdir -p $BACKUPS_DIR
mv dump $BACKUP_NAME
tar -zcvf $BACKUPS_DIR/$BACKUP_NAME.tgz $BACKUP_NAME
rm -rf $BACKUP_NAME
find /home/mongodbbackups/backups/test/ -mindepth 1 -mtime +7 -delete

下面的命令将工作,采取mongo db转储。

mongodb -d -o

在Windows上:试试这个,其中c:\ mongodb是转储文件的位置, 它将创建json格式的元数据,并以bson格式进行备份

C:\MongoDB\bin> MongoDB -d -o

您需要以管理员身份打开Mongo安装文件夹中的命令提示符(在我的例子中是:C:\Program Files\MongoDB\Server\3.4\ bin)。 如果你想要转储你的整个数据库,你可以使用:

mongodump --db database_name

您还可以只转储某些集合,或者转储除某些集合以外的所有集合。

如果你只想转储一个集合(例如用户):

mongodump  --db database_name --collection users

如果你想转储除用户集合以外的所有集合:

mongodump  --db database_name --excludeCollection=users

也可以将转储输出到存档文件:

mongodump --archive=test.archive --db database_name

您可以转储数据库并使用bellow命令进行恢复

mongodb  -d <Your_db_name> -o <path of your folder>

例如,我的数据库名称是跟踪,我有转储在转储文件夹

mongodb  -d tracking -o dump

恢复转储

mongorestore -d <databasename> <dum_path>

mongorestore -d tracking  dump/tracking