---------------------------------------MongoDB数据备份---------------------------------------
MongoDB数据备份
在Mongodb中可以使用mongodump命令来备份MongoDB数据。该命令可以导出所有数据到指定目录中。
mongodump命令可以通过参数指定导出的数据量及转存的服务器。
语法:mongodump -h dbhost -d dbname -o dbdirectory
参数说明:
- -h:MongoDB所在的服务器地址,例如:127.0.0.1,也可以制定端口号:127.0.0.1:27017
- -d:需要备份的数据库实例,例如:test数据库
- -o:备份数据存放的位置,例如:E:\other_dev\mongodb\dump,存放的目录需要提前创建好,在备份完成之后,系统会自动在dump目录下建立一个test目录,这个目录里面存放该数据库实例的备份数据。
实例:
(1)在本地使用27017启动mongod服务
新打开一个DOS窗口,进入mongoDB安装目录bin目录输入命令mongodump:
此时客户端连接到ip为127.0.0.1端口号为27017的MongoDB服务,备份所有的数据到bin/dump/目录中:
(2)将制定数据库备份到指定的目录(test备份到E:\other_dev\mongodb\dump)
mongodump -h 127.0.0.1 -d test -o E:\other_dev\mongodb\dump
查看E:\other_dev\mongodb\dump目录:
---------------------------------------MongoDB数据恢复---------------------------------------
MongoDB数据恢复
在Mongodb中可以使用mongorestore命令来恢复备份的数据。
语法:mongorestore -h <hostname><:port> -d dbname <path>
参数说明:
- --host<:port>,-h<:port>:mongodb所在的服务器地址,默认为localhost:27017
- --db,-d:需要备份的数据库实例,例如:test,这个名称也可以和备份时候的不一样
- --drop:恢复的时候,先删除当前的数据,然后恢复备份的数据。也就是恢复后,备份后添加修改的数据都会被删除,慎用!
- <path>:设置备份数据所在的位置。不同和--dir同时使用。
- --dir:指定备份的目录。不同和--dir同时使用。
实例:
(1)先删除test数据库中learn集合的两个文档
执行mongorestore命令:
再次查看learn集合:
将删除的两个文档进行了恢复。