Linux系统mongdb还原数据库,linux - mongodb备份mongodump、恢复mongorestore

前言

服务器都会涉及到服务迁移或者备份恢复的时候,今天简单总结mongodb的备份与恢复。

56e00ef093893688719e577f0b498687.png

mongodump和mongorestore

--备份单个表

mongodump -u superuser -p 123456 --port 27017 --authenticationDatabase admin -d myTest -c d -o /backup/mongodb/backup20180406.bak

--备份单个库

mongodump -u superuser -p 123456 --port 27017 --authenticationDatabase admin -d myTest -o /backup/mongodb/

--备份所有库

mongodump -u superuser -p 123456 --authenticationDatabase admin --port 27017 -o /root/bak

--备份所有库推荐使用添加--oplog参数的命令,这样的备份是基于某一时间点的快照,只能用于备份全部库时才可用,单库和单表不适用:

mongodump -h 127.0.0.1 --port 27017 --oplog -o /root/bak

--同时,恢复时也要加上--oplogReplay参数,具体命令如下(下面是恢复单库的命令):

mongorestore -d swrd --oplogReplay /home/mongo/swrdbak/swrd/

--恢复单个库:

mongorestore -u superuser -p 123456 --port 27017 --authenticationDatabase admin -d myTest /backup/mongodb/

--恢复所有库:

mongorestore -u superuser -p 123456 --port 27017 --authenticationDatabase admin /root/bak

--恢复单表

mongorestore -u superuser -p 123456 --authenticationDatabase admin -d myTest -c d /backup/mongodb/backup20180406.bak/myTest/d.bson

注:

1、mongorestore恢复数据默认是追加,如打算先删除后导入,可以加上--drop参数,不过添加--drop参数后,会将数据库数据清空后再导入,如果数据库备份后又新加入了数据,也会将新加的数据删除,它不像mysql有一个存在的判断。

2、mongodump在mongo关闭时,也是可以备份的,不过需要指定数据目录,命令为:

mongodump --dbpath /data/db

3、在备节点使用mongodump备份时,必须加上--oplog参数,否则备份的状态不会和任何其他集群成员的状态相吻合,另外在恢复时还需创建一份oplog,用来恢复备份期间所做的操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值