Mongodb备份与恢复

一、创建一个库,然后插入数据

图片1.png

 图片2.png

 

然后进行备份:

要想进行恢复首先要删掉数据库和数据

 图片3.png

然后进行恢复数据:

 图片4.png

数据已经恢复了回来

 

 

再次创建一个库插入数据
图片5.png

然后备份

 图片6.png

如果要恢复先删除数据库然后再恢复

 

 图片7.png

 图片8.png

如果要恢复单个集合和备份:

 

 

一、集合备份

mongoexport -h 集合所在服务器地址 -d 数据库 -c 集合 -o 本地文件存储位置

注:文件格式可选json、cvs等

官方数说明:mongoexport --help

二、集合还原

mongoimport --host 目标IP --port 目标端口 --db 目标数据库 --collection 目标集合 --file 备份文件所在位置

 图片9.png

 图片10.png

http://blog.sina.com.cn/s/blog_a51dfb960101jyo5.html

可以参考

 

#获取系统时间并转换成毫秒数

current=`date "+%Y-%m-%d %H:%M:%S"`;

timeStamp=`date -d "$current" +%s`;

#当前时间的毫秒数

currentTimeStamp=$((timeStamp*1000));

#一个小时前这个时候的毫秒数

yestodayTimeStamp=$((currentTimeStamp-43*60*60*1000));

echo $current;

echo $timeStamp;

echo $currentTimeStamp;

echo $yestodayTimeStamp;

echo "File not exist!dump `date "+%Y-%m-%d %H:%M:%S"` $currentTimeStamp $yestodayTimeStamp" >>/home/admin/testlog.log

#备份新产生表

/home/admin/mongodb305/mongodb305/bin/mongodump --port 47017 -u admin -p admin -d admin -c alarm -q '{"recTime":{$gte:'$yestodayTimeStamp',$lt:'$currentTimeStamp'}}' -o /home/admin/dumptest;

/home/admin/mongodb305/mongodb305/bin/mongodump --port 47017 -u admin -p admin -d admin -c filtering_alarm -q '{"recTime":{$gte:'$yestodayTimeStamp',$lt:'$currentTimeStamp'}}' -o /home/admin/dumptest;

/home/admin/mongodb305/mongodb305/bin/mongodump --port 47017 -u admin -p admin -d admin -c combine_alarm -q '{"recTime":{$gte:'$yestodayTimeStamp',$lt:'$currentTimeStamp'}}' -o /home/admin/dumptest;

/home/admin/mongodb305/mongodb305/bin/mongodump --port 47017 -u admin -p admin -d admin -c processed_alarm -q '{"recTime":{$gte:'$yestodayTimeStamp',$lt:'$currentTimeStamp'}}' -o /home/admin/dumptest

/home/admin/mongodb305/mongodb305/bin/mongorestore -h 192.168.0.213 --port 27017 -u admin -p admin -d admin -c alarm --keepIndexVersion --maintainInsertionOrder /home/admin/dumptest/admin/alarm.bson;

/home/admin/mongodb305/mongodb305/bin/mongorestore -h 192.168.0.213 --port 27017 -u admin -p admin -d admin -c filtering_alarm --keepIndexVersion --maintainInsertionOrder /home/admin/dumptest/admin/filtering_alarm.bson;

/home/admin/mongodb305/mongodb305/bin/mongorestore -h 192.168.0.213 --port 27017 -u admin -p admin -d admin -c combine_alarm --keepIndexVersion --maintainInsertionOrder /home/admin/dumptest/admin/combine_alarm.bson;

/home/admin/mongodb305/mongodb305/bin/mongorestore -h 192.168.0.213 --port 27017 -u admin -p admin -d admin -c processed_alarm --keepIndexVersion --maintainInsertionOrder /home/admin/dumptest/admin/processed_alarm.bson