MongoDB 冷备方式:

use admin    

db.runCommand({"fsync":1,"lock":1}) 

将数据写入缓存中,在进行复制备份。(区别与MySQL的锁表,其MongoDB还可以写入数据,不过是把数据放到了内存里。)


进行mongodump 备份

use admin 

db.$cmd.sys.unlock.findOne() 

db.currentOp()    如果currentOp 只返回{"inprog":[]}结果,说明解锁成功。 


热备方式:

[root@hz-bf-02 mnt]# cat shell/mongodb.sh
#!/bin/sh
dbpath=`date +%Y%m%d%H`
if [ -d /mnt/backup/mongodb/$dbpath ];then
mkdir /mnt/backup/mongodb/$dbpath
fi
mongodump -h hz-mgdb-01 --port 28885 -devent_log_live -o /mnt/backup/mongodb/$dbpath



恢复:

[root@hz-bf-02 shell]# mongorestore -h hz-mgdb-01 --port 28885 -d /mnt/backup/mongodb/2015091712/event_log_live/