打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Mongo备份数据文件

数据文件备份

MongoDB的所有数据都在数据目录(/data/db/)下,备份MongoDB就是创建数据目录中所有文件的副本。但是在运行MongoDB时复制数据目录是不安全的。

Mongodump是MongoDB自带的工具,它能在运行MongoDB时备份数据。用法如下:

1 D:\> mongodump -d test -o backup

-d指定了要备份的数据库,-o指定了备份文件所在的目录,这里会自动创建该目录。

MongoDB还提供了从备份中恢复数据的工具mongorestore。用法如下:

1 D:\> mongorestore -d foo --drop backup/test/

-d指定了要恢复的数据库,--drop代表在恢复前删除集合(若存在)。否则数据就会与现有集合数据合并,可能会覆盖一些文档。

虽然使用mongodump和mongorestore能不停机备份,但有两个问题。

(1)       mongodump使用普通的查询机制,所以产生的备份不一定是服务器数据的实时快照。

(2)       mongodump备份时的查询会对其他客户端的性能产生不利影响。

所以还有MongoDB的fsync命令能在MongoDB运行时复制数据目录还不会损毁数据。用法如下:

1 >use admin2 >db.runCommand( { fsync: 1, lock: true } )

至此,数据目录的数据就是一致的,且为数据的实时快照,因为上了写入锁,可以安全地将数据目录副本用做备份。备份好了,就要解锁,如下:

1 >db.fsyncUnlock();

运行fsync命令是为了确保已经解锁了。

唯一不耽误读写还能保证实时快照的备份方式就是通过从服务器备份。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
使用mongodump及mongorestore备份及恢复数据
MongoDB 备份(mongodump)与恢复(mongorerstore) | 菜鸟教程
浅述MongoDB的管理操作
mongodb应用
MongoDB 备份与恢复
mongodb怎么实现两个表之间的数据转移
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服