我应该使用什么命令来创建我的数据库的MongoDB转储?
当前回答
对特定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
其他回答
使用mongodump:
$ ./mongodump --host prod.example.com
connected to: prod.example.com
all dbs
DATABASE: log to dump/log
log.errors to dump/log/errors.bson
713 objects
log.analytics to dump/log/analytics.bson
234810 objects
DATABASE: blog to dump/blog
blog.posts to dump/log/blog.posts.bson
59 objects
DATABASE: admin to dump/admin
来源:http://www.mongodb.org/display/DOCS/Import +出口+工具
下面的命令将工作,采取mongo db转储。
mongodb -d -o
在Windows上:试试这个,其中c:\ mongodb是转储文件的位置, 它将创建json格式的元数据,并以bson格式进行备份
C:\MongoDB\bin> MongoDB -d -o
有一个实用程序叫做:mongodb 在mongo命令行中,你可以输入:
>./mongodump
上面的操作将创建本地主机上所有数据库的转储。要转储单个集合,使用:
./mongodump --db blog --collection posts
看看:mongodb
编辑:根据MongoDB v4.4.2最新版本更新的命令
出口
mongodump -d <database name> -o <backup-folder>
进口
mongorestore -d <database name> --dir <backup-folder>
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
推荐文章
- 模式、表和数据库之间的区别是什么?
- 我看到VARCHAR(255)如此频繁地使用(而不是其他长度),有什么好的原因吗?
- 使用pgadmin连接到heroku数据库
- Delete_all vs destroy_all
- 我如何移动一个redis数据库从一个服务器到另一个?
- 如何首次配置postgresql ?
- 数据库性能调优有哪些资源?
- 如何在PostgreSQL中自动更新时间戳
- 当使用JDBC连接到postgres时,是否可以指定模式?
- 对象'DF__*'依赖于列'*' -将int改为double
- 在猫鼬,我如何排序的日期?(node . js)
- 将映像存储在MongoDB数据库中
- 重复Mongo ObjectId的可能性在两个不同的集合中生成?
- 字符串作为SQL数据库的主键
- Redis比mongoDB快多少?