我应该使用什么命令来创建我的数据库的MongoDB转储?
当前回答
您可以转储数据库并使用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
其他回答
cmd - - - >
C:\Program Files\MongoDB\Server\3.2\bin>mongodump.exe --db Dintest
或者你可以在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 !!!!!
mongodb -h hostname -u dbusername -p dbpassword——db dbname——port portnumber——out /路径/文件夹
mongodb -h hostname -u dbusername -p dbpassword——db dbname——port portnumber——out /path/folder.gz
你也可以使用gzip备份一个集合,并在运行中压缩备份:
mongodump --db somedb --collection somecollection --out - | gzip > collectiondump.gz
或者在文件名中加上日期:
mongodump --db somedb --collection somecollection --out - | gzip > dump_`date "+%Y-%m-%d"`.gz
更新: 在date文件夹中备份数据库的所有集合。文件被gzip压缩:
mongodump --db somedb --gzip --out /backups/`date +"%Y-%m-%d"`
或者对于单个存档:
mongodump --db somedb --gzip --archive > dump_`date "+%Y-%m-%d"`.gz
或者mongodb在docker内部运行时:
docker exec <CONTAINER> sh -c 'exec mongodump --db somedb --gzip --archive' > dump_`date "+%Y-%m-%d"`.gz
您需要以管理员身份打开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
推荐文章
- elasticsearch vs . MongoDB用于过滤应用程序
- 获得PostgreSQL数据库中当前连接数的正确查询
- MySQL数据库表中的最大记录数
- 从现有模式生成表关系图(SQL Server)
- MongoDB记录所有查询
- HyperLogLog算法是如何工作的?
- 数据库和模式的区别
- 如何从命令行在windows中找到mysql数据目录
- 如何找到MySQL的根密码
- MongoDB:如何找到安装的MongoDB的确切版本
- 将表从一个数据库复制到另一个数据库的最简单方法?
- 如何使用mongoimport导入CSV文件?
- 什么是分片,为什么它很重要?
- 在mongodb中存储日期/时间的最佳方法
- 数据库触发器是必要的吗?