mongodb备份与恢复

来源:互联网 发布:建筑资料员软件 编辑:程序博客网 时间:2024/04/29 22:27

备份

该例子基于以下条件:
1. mongodb服务器运行在当前登录的机器
2. 磁盘空间足够大,备份的文件最大可能与数据一样大

cd ~mkdir testmongobackupcd testmongobackupmongodump2016-12-25T18:37:36.378+0800    writing admin.system.users to 2016-12-25T18:37:36.386+0800    done dumping admin.system.users (1 document)2016-12-25T18:37:36.387+0800    writing admin.system.version to 2016-12-25T18:37:36.389+0800    done dumping admin.system.version (2 documents)2016-12-25T18:37:36.389+0800    writing media.media to 2016-12-25T18:37:36.390+0800    done dumping media.media (3 documents)

数据库备份到testmongobackup文件夹下

[mongo@mongo testmongobackup]$ find ./././dump./dump/media./dump/media/media.metadata.json./dump/media/media.bson./dump/admin./dump/admin/system.users.metadata.json./dump/admin/system.version.metadata.json./dump/admin/system.users.bson./dump/admin/system.version.bson

恢复

cd ~/testmongobackupmongorestore --drop2016-12-25T18:57:39.008+0800    using default 'dump' directory2016-12-25T18:57:39.008+0800    preparing collections to restore from2016-12-25T18:57:39.019+0800    reading metadata for media.media from dump/media/media.metadata.json2016-12-25T18:57:39.035+0800    restoring media.media from dump/media/media.bson2016-12-25T18:57:39.038+0800    no indexes to restore2016-12-25T18:57:39.038+0800    finished restoring media.media (3 documents)2016-12-25T18:57:39.038+0800    restoring users from dump/admin/system.users.bson2016-12-25T18:57:39.056+0800    done

注:

  1. 使用–drop选项,可以在恢复数据之前先丢弃现有的数据,最终备份数据将替换现有的数据。如果不使用,被恢复的数据将追加到每个集合的尾部,这将导致出现重复的数据。
  2. mongodump工具在写入备份文件之前,不会清空输出目录中的内容。

备份或恢复单个数据库

mongodump -d databasse_namemongorestore -d databasse_name --drop

备份或恢复单个集合

mongodump -d database_name -c collection_namemongorestore -d databasse_name -c collection_name --drop

深入学习

mongodump --helpmongorestore --help
0 0