我有一个数据库,有150 DB的数据。Am使用MongoDump和Mongorestore方法进行备份和恢复。
我的生产服务器运行在Mongo 2.2,测试服务器运行在2.6.1
当我从生产服务器Mongo2.2备份时,需要很长时间才能完成150 of数据的备份。修复需要6-8小时。它没有完成,没有错误,有时还原会自动删除,我们需要再次运行还原或恢复丢失的集合。
有没有最好的方法来采取备份和恢复方法,这样我们就可以节省时间并运行它而不会出错?
你好,瑞西
发布于 2014-07-03 07:14:54
您可以为本机备份和还原功能选择几个选项,这些选项在http://docs.mongodb.org/manual/administration/backup/的文档中列出得很好。
简单地说,随着数据的增长,mongodump /mongo还原对于备份/恢复的目的就变得不那么理想了,您应该开始考虑其他选项,比如:
发布于 2015-02-11 05:58:19
最好的方法是在系统上使用LVM进行备份和恢复。
创建快照:
lvcreate --size 100M --snapshot --name mdb-snap01 /dev/vg0/mongodb存档快照
umount /dev/vg0/mdb-snap01
dd if=/dev/vg0/mdb-snap01 | gzip > mdb-snap01.gz还原快照
lvcreate --size 1G --name mdb-new vg0
gzip -d -c mdb-snap01.gz | dd of=/dev/vg0/mdb-new
mount /dev/vg0/mdb-new /srv/mongodb直接从快照恢复
umount /dev/vg0/mdb-snap01
lvcreate --size 1G --name mdb-new vg0
dd if=/dev/vg0/mdb-snap01 of=/dev/vg0/mdb-new
mount /dev/vg0/mdb-new /srv/mongodb远程备份存储:
umount /dev/vg0/mdb-snap01
dd if=/dev/vg0/mdb-snap01 | ssh username@example.com gzip > /opt/backup/mdb-snap01.gz
lvcreate --size 1G --name mdb-new vg0
ssh username@example.com gzip -d -c /opt/backup/mdb-snap01.gz | dd of=/dev/vg0/mdb-new
mount /dev/vg0/mdb-new /srv/mongodbhttps://stackoverflow.com/questions/24322277
复制相似问题