使用mongodump及mongorestore备份及恢复数据

mongodump及mongorestore是用于备份和恢复mongodb数据库的两个命令,位于mongodb安装目录的bin文件夹下。

mongodump导出的备份文件为二进制格式,每一个文档的对应备份文件有两个,文档名.bson和文档名.metadata.json两个文件。

先看一个mongodump的使用示例:

./mongodump -d vodlite3 -o /mibackup/

该命令将vodlite3数据库备份到/mibackup/目录下。我们查看mibackup目录可以看到备份结构如下:

2012-12-18_174522

mongodump可用选项如下:

--help
查看帮助信息。

-v [ --verbose ]
显示更多调试信息。

--version
显示该命令版本。

-h [ --host ] arg
mongodb数据库所在主机IP地址。

--port arg
mongodb启动时所使用的端口。也可以使用 --host:port格式直接指定主机和端口。

--ipv6
是否支持ipv6 。

-u [ --username ] arg
指定登陆用户名。

-p [ --password ] arg
指定登陆密码。

--dbpath arg
越过mongod服务器,直接访问给定路径的mongod数据库文件。使用该参数需要锁定给定的数据目录,所以需要先关闭使用该目录的mongod服务。

--directoryperdb
如果指定了dbpath目录,那么每个db都会给保存到一个单独的文件夹中。

--journal
enable journaling

-d [ --db ] arg
准备备份的数据库。

-c [ --collection ] arg
准备备份的集合。

-o [ --out ] arg
导出数据将要保存在的目录,如参数为“-”,则直接在控制台显示。

-q [ --query ] arg
json query

--oplog
Use oplog for point-in-time snapshotting

--repair
尝试修复损坏的数据库。

--forceTableScan
强制表扫描。

mongorestore用来恢复mongodump导出的数据,语法格式如下:


mongorestore [options] [directory or filename to restore from]

使用该命令恢复刚才备份的数据:


mongorestore --db vodlite3 --directoryperdb D:\vodlite3

可用选项如下:

--help
produce help message

-v [ --verbose ]
be more verbose (include multiple times for more verbosity e.g. -vvvvv)

--version
print the program's version and exit

-h [ --host ] arg
mongo host to connect to ( /s1,s2 for sets)

--port arg
server port. Can also use --host hostname:port

--ipv6
enable IPv6 support (disabled by default)

-u [ --username ] arg
username

-p [ --password ] arg
password

--dbpath arg
directly access mongod database files in the given path, instead of connecting to a mongod server - needs to lock the data directory, so cannot be used if a mongod is currently accessing the same path

--directoryperdb
if dbpath specified, each db is in a separate directory

--journal
enable journaling

-d [ --db ] arg
database to use

-c [ --collection ] arg
collection to use (some commands)

--objcheck
validate object before inserting

--filter arg
filter to apply before inserting

--drop
drop each collection before import

--oplogReplay
replay oplog for point-in-time restore

--keepIndexVersion
don't upgrade indexes to newest version

参考链接:
1、mongodump的官方帮助文档
2、mongodbde备份及恢复策略

此条目发表在redis/memcached/mongo分类目录,贴了, , 标签。将固定链接加入收藏夹。

使用mongodump及mongorestore备份及恢复数据》有一条回应

  1. 藏章博客说:

    好久没来博主博客了,就来看看!~大家 相互访问

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据