我应该使用什么命令来创建我的数据库的MongoDB转储?
当前回答
或者你可以在Windows上做备份脚本,记得将Winrar添加到%PATH%
bin\mongodump --db=COL1 -o D:\BACK\COL1
rar.exe a -ep1 -r COL1.rar COL1
rename COL1.rar "COL1_%date:~10,4%_%date:~7,2%_%date:~4,2%_%time:~0,2%_%time:~3,2%.rar"
#rmdir /s /q COL1 -> don;t run this on your mongodb/ dir !!!!!
其他回答
此命令将以json和bson格式转储给定的数据库。
mongodump -d <database name> -o <target directory>
定时备份/恢复Mongodb。
备份:
sudo mongodump --db db_name --out /path_of_your_backup/`date +"%m-%d-%y"`
——db参数作为数据库名
输出路径的——out参数
恢复:
sudo mongorestore --db db_name --drop /path_of_your_backup/01-01-19/db_name/
——drop参数用于在恢复前删除数据库
时间:
您可以使用crontab进行定时备份:
sudo crontab -e
它以编辑器打开(例如:纳米)
3 3 * * * mongodump --out /path_of_your_backup/`date +"%m-%d-%y"`
每天凌晨03:03备份
根据您的MongoDB数据库大小,您可能很快就会耗尽磁盘 备份太多的空间。这就是为什么也建议清洗 定期或压缩旧备份。例如,删除 所有超过7天的备份都可以使用下面的bash 命令:
3 1 * * * find /path_of_your_backup/ -mtime +7 -exec rm -rf {} \;
删除超过7天的所有备份
祝你好运。
裁判: https://www.digitalocean.com/community/tutorials/how-to-back-up-restore-and-migrate-a-mongodb-database-on-ubuntu-14-04
下面的命令将工作,采取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
编辑:根据MongoDB v4.4.2最新版本更新的命令
出口
mongodump -d <database name> -o <backup-folder>
进口
mongorestore -d <database name> --dir <backup-folder>