加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 服务器 > 系统 > 正文

mongodb 备份和复原

发布时间:2023-10-14 15:11:54 所属栏目:系统 来源:
导读:mongodb提供了两个命令用来备份(mongodump)和恢复(mongorestore)数据,数据dump出来的格式是BSON的

1.mongodump 备份

用法:bin/mongodump [options]

举例:将本机6666端口的数据库备份到本机的/dat
mongodb提供了两个命令用来备份(mongodump)和恢复(mongorestore)数据,数据dump出来的格式是BSON的
 
1.mongodump 备份
 
用法:bin/mongodump [options]
 
举例:将本机6666端口的数据库备份到本机的/data/6666目录下
 
bin/mongodump --port 6666 --directoryperdb -o /data/6666
 
connected to: 127.0.0.1:6666
 
all dbs
 
DATABASE: test  to  /data/6666/test
 
test.system.indexes to /data/6666/test/system.indexes.bson
 
1 objects
 
test.ints to /data/6666/test/ints.bson
 
4 objects
 
DATABASE: admin  to  /data/6666/admin
 
2.mongorestore 恢复
 
用法:bin/mongorestore [options] [directory or filename to restore from]
 
举例:将数据库test删除,然后从备份目录恢复
 
> show dbs
 
admin  (empty)
 
local  4.201171875GB
 
test  0.203125GB
 
> use test
 
switched to db test
 
> db.dropDatabase()
 
{ "dropped" : "test", "ok" : 1 }
 
> show dbs
 
admin  (empty)
 
local  4.201171875GB
 
使用mongorestore恢复
 
bin/mongorestore -host 127.0.0.1:6666 --directoryperdb  /data/6666/
 
connected to: 127.0.0.1:6666
 
Wed Jul  6 16:37:33 /data/6666/test/ints.bson
 
Wed Jul  6 16:37:33  going into namespace [test.ints]
 
Wed Jul  6 16:37:33  4 objects found
 
Wed Jul  6 16:37:33 /data/6666/test/system.indexes.bson
 
Wed Jul  6 16:37:33  going into namespace [test.system.indexes]
 
Wed Jul  6 16:37:33 { name: "_id_", ns: "test.ints", key: { _id: 1 }, v: 0 }
 
Wed Jul  6 16:37:33  1 objects found
 
查看数据库是否恢复
 
> show dbs
 
admin  (empty)
 
local  4.201171875GB
 
test  0.203125GB
 
mongorestore有个参数--drop,使用此参数,会先将集合里的数据都删除了再恢复
 
就是说,如果你备份完数据后有新增数据,那么使用--drop,新增的数据会不见
 
不使用此参数,恢复备份的时候新增的数据依然存在
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章