mongodb不停机备份
2015-07-10 17:25
543 查看
一、备份
1.锁定数据库:
use admin
db.runCommand({fsync:1,lock:1})
{
“info” : “now locked against writes, use db.fsyncUnlock() to unlock”,
“seeAlso” : “http://www.mongodb.org/display/DOCS/fsync+Command”,
“ok” : 1
}
fsync:强制将所有缓冲写入磁盘
lock:上锁,不能写入(所有写的操作会阻塞)
2.开始备份……
mongodump -d mailaccess -c Mail -q ‘{user:”zhaoxy1@szdep.com”}’ -o /data/dump
备份mailaccess database的Mail collection到/data/dump目录
-d:备份哪个数据库
-c:备份哪个collection(可选,不传默认为整个database)
-q:指定备份collection的条件(与-c参数一起使用)
3.备份完后解锁:
use admin
db.$cmd.sys.unlock.findOne()
{ “ok” : 1, “info” : “unlock completed” }
二、还原:
mongorestore -d MA –drop /data/dump/mailaccess
还原/data/dump目录下的mailaccess数据库到MA database中
-d:还原到哪个数据库
–drop表示在恢复前先删除原来的集合(如果存在的话)
1.锁定数据库:
use admin
db.runCommand({fsync:1,lock:1})
{
“info” : “now locked against writes, use db.fsyncUnlock() to unlock”,
“seeAlso” : “http://www.mongodb.org/display/DOCS/fsync+Command”,
“ok” : 1
}
fsync:强制将所有缓冲写入磁盘
lock:上锁,不能写入(所有写的操作会阻塞)
2.开始备份……
mongodump -d mailaccess -c Mail -q ‘{user:”zhaoxy1@szdep.com”}’ -o /data/dump
备份mailaccess database的Mail collection到/data/dump目录
-d:备份哪个数据库
-c:备份哪个collection(可选,不传默认为整个database)
-q:指定备份collection的条件(与-c参数一起使用)
3.备份完后解锁:
use admin
db.$cmd.sys.unlock.findOne()
{ “ok” : 1, “info” : “unlock completed” }
二、还原:
mongorestore -d MA –drop /data/dump/mailaccess
还原/data/dump目录下的mailaccess数据库到MA database中
-d:还原到哪个数据库
–drop表示在恢复前先删除原来的集合(如果存在的话)
相关文章推荐
- mongodb备份与恢复(下)—ttlsa教程系列之mongodb(九)
- MongoDB oplog 深入剖析
- 使用Node.js + MongoDB实现一个简单的日志分析系统
- nodejs 操作mongodb插查删改
- PHP添加mongodb扩展
- MongoDB YUM 安装配置
- mongodb进阶三之mongodb管理
- mongodb的基本操作
- 操作4 mongodb备份脚本
- MongoDb环境搭建
- 操作3 mongodb和mysql 开启慢查询日志 ,以及mongodb从配置文件启动
- mongodb进阶二之mongodb聚合
- mongodb与spring集成案例
- 分享一段mysql,mongodb 实现LBS搜索的简单代码
- mongodb 的 scala 驱动 -> casbah
- MongoDB系列一(索引及C#如何操作MongoDB)
- MongoDB数据库导出导入迁移
- mongodb学习链接
- mongodb - 前端form表单数据传输,在保存和清除的数据格式的处理程序的 - 非递归
- mongoDB常用命令